10/2021 |
10.12 |
New
- The Copy Cluster Values command writes extra measures of clustering quality (Lratio and Isolation distance).
- You can double-click any channel in a time view to zoom it (maximize). Previously only channels with a Y axis could zoom.
- If an output sequence fails to load, the error message box now includes the source line that caused the failure.
- The Cursor menu Display all command now displays a little data before the first and after the last cursor to make them easier to see and to make space for any cursor label. If you hold down the Ctrl key, the command considers only active cursors when calculating the new x range.
- There are new options in the Measurements to XY views and to Data channels dialogs to allow cursor adjustment if a cursor seek operation fails or if the Ignore Cursor 0 step option is triggered.
- The Cursor adjustment dialog that can appear during Measurements to XY views and to Data channels has new options to fetch vertical cursors that failed to step and to display all the active vertical cursors.
- Improvements to Copy as Text and Export as Text for time view channels: Level event channels output the level at each transition, WaveMark channels include the number of traces and list multiple traces in columns, the SUMMARY output section now lists more information for the channels and uses the same format for every channel.
- The Copy for Spreadsheet and Export As Spreadsheet command for Level event channels has been changed to show high levels as 1 and low levels as 0. Previously it displayed the number of edges in each time range, which was not very useful.
- There is a new Edit menu Preferences option in the Compatibility tab to revert the Copy/Export as Text and Copy/Export As Spreadsheet changes to the old format.
- The LastTime(), NextTime(), MarkEdit(), MemSetItem() and MemGetItem() script commands allow the codes%[] array argument to have size 1-4 for codes and 5 to access the codes and the extra 32-bit integer value associated with each marker in a 64-bit smrx file.
- The MemSetItem() script command can now report the index of the first item at or after a time.
- The ArrSort() script command now accepts zero length arrays (which does nothing) to save the user testing for zero length to avoid a script error before calling.
- The ChanList() script command now allows a zero length array.
- The ArrFilt() script command runs significantly faster (takes around half the time with large arrays).
- Unmodified array arguments of the ArrStats(), ArrSum(), EditCopy(), PlayWaveCopy(), SampleWaveMark() script commands are now const.
- The Yield() script command can return the current allow% state and preserves it if allow% is negative.
- The ArrStats() and ArrSum() script commands can set alternative (slower) algorithms for more accurate summation.
- The Len() script command can report the number of elements in a multi-dimensional array.
- The MarkEdit() script command can modify the codes of Level event channels stored in 64-bit smrx files (as they are stored as Marker data).
Fixes
- Level event channels sampled by a Micro1401-4 inverted the input data. You can use the InvertLev.s2s script in the Documents/Spike10/Scripts folder to invert them. Backup your files before running the script as it modifies the data.
- When using the Measurements to XY views and to Data channels commands with a curve fit and the User check positions option set, the displayed fit line was for the previous step.
- The Cursor Regions and Cursor Values dialog boxes did not record changes to check boxes, radio buttons or mode.
- The Sampling Configuration dialog Automation tab warned you if you browsed to a non-writeable folder, but still set it.
- In the Output sequencer text editor, the DIGPS, DIGPC and DIGPBR sequencer instructions did not highlight.
- In the Output sequencer, a label without white space after the colon was treated as an error, for example "Label:DAC 0,1".
- The script compiler did not flag an error if you used resize on a const array.
- The script compiler gave an error if a resize statement was not terminated by a semicolon, so var y[2]; if 1 then resize y[3] endif was not allowed.
- The ArrConv(), ArrCWT(), ArrDot(), ArrFilt(), ArrHist(), ArrSpline() and SerialWrite() script commands did not accept const arrays.
- The documentation of the following script commands did not list unmodified array arguments as const: ArrRange(), ChanWriteWave(), FileTimeDateSet(), FIRResponse(), GrdSet(), MarkSet(), MatLabPut(), PolyEval(), PolyRoot(), SSTempSet(), ToolbarEnable().
- The View menu Multimedia files command failed to open .mp4 files if they held audio only (no video).
- In the Spike shape dialogs the zoom effect when you clicked in the data area to start dragging the current spike to a template was too fast to be visible.
- Using the HCursor() script command to set a Spike shape dialog cursor value beyond the y axis range could set a negated version of the position.
- The text importer did not save individual channel configurations in a valid format.
- Stepping backwards by a data point in a virtual channel (for example with the LastTime() script command or an active cursor search in Data points mode) stepped by two data points.
- The Grid view default column titles skipped over the AA-AZ series when more than 26 columns were set. The sequence was A-Z, BA-BZ, CA-CZ and so on and should have been A-Z, AA-AZ, BA-BZ...
- Copy as Text of WaveMark channels included an extra separator between the Units and the Rate.
- If you wrote data to a non-waveform channel (for example with the ChanSave() script command), then overwrote it (allowed with wave-based channels but not event-based channels), Spike2 attempted to write the data, resulting in a corrupted data channel.
Changes
- In a Time view, the Copy as Text output format did not match the documentation. We have revised it to make the output more regular (and useful) and rewritten the documentation. If you exported data as text you may need to revise your import method or use the new Edit menu Preferences->Compatibility option to output the old format.
|