12/2024 |
9.21a |
Cambios
- In a Micro4, nested and recursive use of the CALL...RETURN output sequencer commands would fail.
- Using the SSClassify() script command in fast mode to overwrite a channel could cause Spike2 to hang.
|
|
11/2024 |
9.21 |
Fijaciones
- When viewing output sequencer code, the command "WAVEGO S,W" would display the 'S' in the colour set for sequencer functions as it was confused with the s(expr) sequencer function.
- The TextMark List dialog did not update the displayed channel number if there were multiple TextMark channels and the user changed channel.
- When recording the SampleChannels() command, the special channels position was always left at the default value.
- If you sampled with a Micro4 with a Monitor revision less than 7, the output sequencer did not run.
- When calculating the power in a band in a virtual channel, the low band edge was set incorrectly. The error was typically less than a quarter of the requested frequency resolution.
- In a script file with #include files, It was possible for pop-up tool-tips and the contents of the Functions drop-down list to display old values if the included script files were edited.
- Added documentation for the Add Raw Video check box in the S2Video Configuration dialog.
Cambios
- The channel list generated by the DlgChan() script function is now in the order of the displayed channels on screen. Previously, the list was sorted alphabetically, but as the entries started with the channel number, the order was unexpected (1-10, 100-109, 11, 12,...).
|
|
04/2022 |
9.20 |
Nuevo
- The Bionic and Ripple file importers have been updated to work with version 3.0 files with 64-bit timestamps.
- The algorithm we use to select the x axis major tick spacing is now much faster.
- The Heka importer can use use regular expressions to select items for import.
- There is a new importer for BrainVision format files.
- The ToolbarText() command is extended to change the allowed user actions when the toolbar is active.
Fijaciones
- The Intan importer would fail if importing a RHD file containing temperature sensor information.
- The slider control in a user-defined dialog could omit one of the tick marks and an initial, non-zero position could be incorrectly displayed.
- No longer takes two attempts to close the D360R conditioner dialog when sampling.
- Closing the D360R conditioner dialog when sampling could crash Spike2 if an ADC port offset was applied.
- If a signal conditioner dialog failed to open, this caused all conditioner dialogs to be unavailable.
- The 1902 conditioner dialog did not initialize correctly if there was no configuration file.
- The Calibration dialog limited channel units to 5 characters in a 64-bit .smrx data file (which allows up to 10 characters).
- With a Micro4 interface, the output sequencer generated outputs 1 sequencer clock tick earlier that previous 1401s; all time intervals and relative timings between sequencer outputs were accurate and it would be most unusual if this had any effect on experimental data.
- If you resized the Sampling Notes dialog, the Close button did not move.
- The Graphical sequencer could report spurious timing errors when the sequencer timing resolution changed.
- In the Sampling Configuration dialog Automation tab, selecting a folder with the Browse... button did not clear existing errors.
|
|
01/2024 |
9.19 |
Nuevo
- Spike2 rechazará las solicitudes de apagado del sistema al muestrear los datos.
- Los Talkers que pueden conectarse a un dispositivo de hardware diferente para cada sesión de muestreo pueden almacenar los ajustes de variación por separado para cada dispositivo de hardware.
- Los talkers con canales RealMark ahora pueden generar Titles (Títulos) y Units (Unidades), separados para elementos múltiples ya que hemos hecho un espacio adicional de 64 caracteres disponible para este propósito.
- El ADI file importer ahora puede aplicar códigos de marcador a los comentarios basados en la coincidencia de los comentarios con expresiones frecuentes contenidas en un archivo de texto.
- El AlphaOmega file importer se ha actualizado para gestionar los ajustes de ganancia en archivos recientes.
- El Heka file importer ahora puede importar archivos de datos que contengan valores de punto flotante. Además, si falta un archivo de datos subsidiario que es necesario, el nombre del archivo aparece en el cuadro de diálogo de avance.
Fijaciones
- Si un Talker se detenía repentinamente, Spike2 no respondía a su desconexión, dificultando el restablecimiento de la conexión.
- En el diálogo Talker->Info... los valores de Clock drift rate se etiquetan en ms/s pero eran en s/s (por consiguiente, 1000 veces muy pequeño).
- En un archivo importado, el cuarto comentario del archivo comenzaba con un carácter de fin de línea falso.
- A backwards active cursor search of a waveform channel stored in a 32-bit .smr file could report a position one point before the start of the search range, which would fail the search.
- During sampling to a 64-bit .smr file, a backwards active cursor search of a waveform channel could report the wrong position.
- El comando de script VirtualChan(chan%, 0{, expr$}) devolvía siempre 0, incluso cuando la expresión no era válida.
- El comando de script ViewTrigger(0,...) no ajustaba el modo de visualización Paged.
- Abrir el menú Sample durante el muestreo hacía que se cerrara cualquier diálogo Signal Conditioner abierto.
- Si utilizaba el panel de control del Digitimer D360R Conditioner para cambiar los ajustes durante el muestreo, con frecuencia se perdían los cambios.
- Signal Conditioner changes made during sampling now always take effect when you click Apply. Previously they could be deferred.
- Si se utilizaba el comando de script ChanValue() con el argumento mode% ajustado a 6, 7, 11 o 12 (modos de frecuencia Mean y Instantaneous frequency), la medición se hacía con el valor de Beats Per Minute ajustado para el canal, no con el valor implícito por el modo solicitado.
- En un diálogo de usuario, al definir un campo de número Real, el número de cifras significativas que se mostraban era a menudo mucho mayor que el número especificado en el comando de script DlgReal().
- Los archivos de vídeo .mp4 muy largos no se podían reproducir pasadas unas horas de vídeo. Hemos corregido el componente de terceros que causaba el problema y hemos demostrado la reproducción de un vídeo de más de 30 horas de duración.
- Un archivo de vídeo mal formateado podía bloquear Spike2 cuando se abría para la revisión multimedia.
Cambios
- En una Result view, el comando Clear del menú Edit, ahora está siempre activado, no sólo cuando el recuento de barridos de la vista es distinto de cero.
|
|
05/2023 |
9.18 |
Nuevo
- Ahora es posible utilizar más de un acondicionador de señal D360R.
- Al importar eventos de una forma de onda en el modo Peaks and Troughs, podía añadirse a la salida un primer pico espurio.
- En una cuadrícula con c columnas (columnas de datos indexadas entre 0 y c-1), si los comandos de script GrdSet() y GrdGet() intentaban acceder a una columna c (inexistente), accedían a la columna 0.
- Los diálogos definidos por el usuario con solo botones (sin campos de entrada) podían fijar el foco de entrada en un botón que no era el botón predeterminado.
- Si se seleccionan más de 39 Arbitrary waveforms en la Sampling configuration, la barra de herramientas de Play waveform no habilitaba/deshabilitaba los botones numerados más altos y era posible que los botones causaran efectos inesperados (como ocultar la ventana de muestreo).
- El comando Show All del eje x en una vista XY con un solo punto de datos o con todos los puntos de datos en la misma posición x no producía ningún efecto. Ahora se desplaza el eje x para centrarlo en la posición de los datos.
- Una cadena larga de valores NaN (Not a Number) en un canal RealWavehacía que el Skip NaN Channel process dejara de leer datos.
- En una vista de script, al utilizar F1 con el ratón sobre View() no se abría la página de ayuda correcta.
- Si se hacía clic con el botón derecho del ratón en un canal y se seleccionaba Hide Channel, esto no se grababa cuando la función Script recording estaba activada.
- Si se cambiaba el modo de trazado del eje x de Time of Day a Seconds, las etiquetas de cursor mostraban la hora como Time of Day en segundos, no como segundos desde el inicio del archivo. La visualización era correcta en la siguiente actualización.
- Los acondicionadores de señal CED 1902 y Axon CyberAmp no funcionaban con los puertos COM 10 o superiores.
- El diálogo XY Draw mode registraba All Channels como 0, no como -1.
- El Text importer ahora permite colocar las etiquetas o líneas de unidades en cualquier lugar hasta la primera línea de datos. Anteriormente estaba limitado a las líneas consideradas como información de cabecera por el escaneo inicial.
- En el Text importer, la opción No Config dejaba al importador en un estado no funcional hasta que se cargaba una configuración existente.
- El CFS data importer fallaba con los archivos que contenían varios barridos de datos.
- El EDF data importer podía fallar al leer comentarios. Los códigos de anotación utilizados no coincidían con la documentación.
- En el binary file importer, al aumentar el número de canales, el programa se bloqueaba en un bucle y mostraba un error.
Fijaciones
spike9w.918fix
Cambios
- Using the command HCursorExists(0) (or any impossible cursor number) no longer generates a fatal script error and returns 0.
- When processing a Channel specification, if the first character was an illegal single channel, for example, "0,2..4", the error was not reported. Now the error is reported, but parsing continues and reports channels 2, 3 and 4, as previously.
- Al abrir un archivo para muestreo, MaxTime() devuelve el tiempo en el muestreo y devuelve 0,0 antes de que inicie el muestreo. Anteriormente, si un script escribía datos antes de que iniciara el muestreo, MaxTime() devolvía el tiempo del último elemento escrito hasta que iniciaba el muestreo y, a continuación, devolvía el tiempo de muestreo.
|
|
09/2022 |
9.17 |
Nuevo
- Se han introducido mejoras en la compensación de la desviación de tiempo de Talker.
- Es posible copiar el contenido del diálogo Talker Info del menú Sample al Portapapeles o a la vista Log.
- El File Importer intenta manejar mejor los archivos que contienen datos que tienen marca de tiempo y que están fuera de orden y ahora puede importar algunos archivos que antes rechazaba (aunque ignorando/parcheando los eventos).
- La velocidad de paso máxima del secuenciador de salida Micro4 se ha incrementado de 100 a 250 kHz.
Fijaciones
- Con un Micro4, al muestrear datos WaveMark (forma de pico) y canales Waveform, era posible que los canales Waveform muestrearan del canal equivocado.
- En Sampling configuration, cambiar el canal utilizado para una WaveMark (forma de pico) alejado de uno utilizado también como canal de WaveMark , podía hacer fallar el muestreo posterior.
- Durante el muestreo, el ajuste distinto de cero del parámetro Minimum step en un proceso de Measurement , podía hacer que no se encontraran datos.
- Establecer una banda de color muy estrecha en una Colour scale (utilizada para los sonogramas y los trazos de densidad de grupo) podía ocasionar un fallo cuando se utilizaba la escala.
- Al grabar cadenas literales (como el comentario de un canal) que incluían una comilla doble (") se omitía el carácter ".
- El compilador de script no aceptaba el valor literal entero para el entero más negativo (-9223372036854775808), aunque sí aceptaba 0x8000000000000000 (el mismo valor en hexadecimal).
- En una vista de Time, los botones disparadores Next y Previous no se desactivaban cuando un script desactivaba los cambios del eje X (por ejemplo, allow% en el comando Toolbar()).
- El comando de script Spline2D(const p[][]); para establecer posiciones generaba un error de script fatal si las posiciones no eran distintas. Ahora retorna -1, tal y como está documentado.
- El importador de archivos Binary podía bloquearse si el archivo importado tenía una longitud inesperada para los datos contenidos. No guardaba las unidades de canal individuales, no procesaba las opciones de FileConvert$() en el argumento cmd$ y no abría el archivo de Ayuda asociado.
- El importador de archivos de datos MC_Rack podía bloquearse al abrir un archivo de datos.
- Los importadores de archivos de datos que tienen opciones para guardar y cargar configuraciones (como los importadores Text y Binary ) podían bloquearse al leer una configuración guardada previamente.
- La opción Channel Process para rellenar los espacios de un canal de forma de onda desplazaba los datos un punto al rellenar un espacio de un solo punto.
- El importador Neuralynx solo importaba el primer canal de cada carpeta.
|
|
04/2022 |
9.16 |
Nuevo
- Se agregó la compatibilidad necesaria para el Acondicionador de señal programable Digitimer D360R.
- Ahora intenta abrir archivos .smr de 32 bits anteriores a la versión 9 que excedan el límite de tamaño de 2 GB (esto permite el acceso a algunos archivos escritos de manera incorrecta que anteriormente no se abrían).
- El comando Export As Data file del menú File ya no se cancela si se encuentra algún error. Ahora hace lo mejor que puede y enumera los problemas en la vista del Log.
- En un diálogo definido por el usuario, ahora es posible incluir una barra vertical "|" en un indicador insertando "||". Una sola barra vertical presenta una sugerencia.
- Se ha rediseñado el sistema de importación de datos para que los importadores sean mucho más pequeños (por lo general, se reducen de 2 MB a entre 1 y 200 kB). Esto hace que el primer uso del comando Import del menú File sea mucho más rápido.
- El importador Text es mucho mejor para adivinar cuál es el separador de columnas cuando no es coma, tabulador o espacios. Hay una nueva opción para ajustar el separador de columnas en el diálogo de configuración.
- Se ha rediseñado el importador de texto para manejar una gama más amplia de archivos y es mucho menos probable que detecte un canal de forma de onda como un TextMark debido a una pequeña cantidad de entradas no numéricas.
- Los importadores que leen datos como RealWave (por ejemplo, Ponemah) solían escanear los datos antes de importar para encontrar el rango de datos. Esto podía demorar mucho con los archivos voluminosos. Ahora encontramos el rango de los datos mientras los transferimos al archivo de salida, lo que puede reducir en gran medida el tiempo para importar archivos de gran tamaño. También hemos incrementado el tamaño de los búferes de datos para tratar de acelerar la importación de datos. Por ejemplo, el tiempo para importar un archivo Ponemah 6 de 80 GB se ha reducido de 5 horas a menos de 2.
- Se ha ampliado el importador de archivos Ponemah para poder filtrar los datos por tema, canal y rango de tiempo. Por ejemplo, puede configurarlo para importar todos los canales que contienen ECG en el título del canal desde las 10 horas al archivo durante 1 hora. Con archivos muy voluminosos con muchos canales, esto puede reducir los tiempos de importación de horas a segundos cuando solo se necesitan subconjuntos de datos. Aún así, puede demorar la localización de los datos deseados.
- El importador Plexon tiene varias mejoras, por lo que lee una gama más amplia de archivos de entrada y se adapta mejor a los archivos con varias secciones.
- El importador de TDT solo añade _1, _2, etc. a los títulos de los canales cuando hay duplicados.
- El importador TMS ahora admite la extensión de archivo Poly5 además de S00.
- El importador XDF (LabStreamingLayer) ahora importa señales RealMark y TextMark y maneja correctamente formas de onda con espacios.
- Hay un nuevo importador para archivos de datos Allego (NeuroNexus).
Fijaciones
- El paso de recuadros de vídeo con el enlace del Cursor 0 podría pasar dos veces por el mismo lugar y, por consiguiente, se perdía tiempo.
- Spike2 no abría archivos de datos .smrx en los que todas las cadenas (título del canal, unidades, notas, comentarios del archivo) tenían menos de 3 caracteres y donde se había editado una cadena.
- En una vista de script, un Func o Proc definido por el usuario con un espacio entre el nombre de la función y la llave de apertura, por ejemplo, func fred (), se omitía de la lista de funciones y no recibía una sugerencia de llamada emergente.
- Al cambiar el tamaño de los diálogos Script Bar List y Sample Bar List, no se movía el botón de Ayuda.
- La documentación ahora describe cómo asociar Talkers específicos con varias copias de Spike2 usando la línea de comandos.
- ArrHist() no permitía una matriz de datos enteros.
- Al inspeccionar los valores de script en el depurador de scripts, podía cambiar el valor de los elementos const marcados.
- El comando de script PlayWaveCopy() no funcionaba en el caso de un solo canal con un argumento de matriz unidimensional.
- Los mensajes de error generados en la barra de mensajes del secuenciador de salida estaban mal formateados cuando fallaba una actualización de secuencia en línea debido a problemas de tamaño.
- La importación de archivos Ponemah con varias secciones o con la primera sección de un canal que no estaba en el momento 0, colocaba los datos en el momento erróneo.
- Al importar datos en el modo Sweeps, el desplazamiento del archivo de cada barrido a partir del último podría aumentar a través del archivo importado.
- El importador ADI podría bloquearse al leer archivos con una gran cantidad de secciones.
- El importador de TMS rechazaba archivos de entrada válidos.
- El importador Igor podría bloquearse si se usaba para importar un archivo PXP que contiene números complejos.
- El importador DataPac asumía anteriormente que todos los archivos contenían datos flotantes, por lo que los archivos que contenían datos enteros no se importaban ni se leían como basura.
- En la casilla About Spike2, tanto el Micro2 como el Power3A podían notificar que estaba disponible una actualización de firmware, cuando en realidad no lo estaba.
|
|
10/2021 |
9.15 |
Nuevo
- El comando de script RasterSet () ahora acepta una matriz de datos de tamaño cero para establecer una línea ráster sin datos.
- El comando de script ArrSort() ahora acepta matrices de longitud cero (que no hace nada) para evitar que el usuario pruebe la longitud cero para evitar un error de script antes de llamar.
- Los argumentos de matriz no modificados de los comandos de script ArrStats(), ArrSum(), EditCopy(), PlayWaveCopy(), SampleWaveMark() ahora son const.
- El comando de script Yield() puede devolver el estado allow% actual y lo conserva si allow% es negativo.
- El comando de script Len() puede reportar el número de elementos en una matriz multidimensional.
Fijaciones
- Los canales de Level event muestreados por un Micro1401-4 invirtían los datos de entrada. Puede usar el script InvertLev.s2s dela carpeta Documents/Spike10/Scripts para invertirlos. Haga una copia de seguridad de sus archivos antes de ejecutar el script, ya que modifica los datos.
- En un script, se permitía pasar una submatriz de longitud cero a una función como array[1:0], pero no se podía usar la array[0:0].
- La expresión de canal virtual Ec() que convierte los recuentos de eventos en una forma de onda podía desubicar los eventos que estuvieran exactamente en el límite entre dos puntos de forma de onda.
- Se mejoró la precisión de EventToWaveform() para que coincida mejor con las funciones del kernel de eventos del canal virtual.
- El script: var Spk[4][2]; Len(habla); fallaba. Ahora retorna la longitud de la primera dimensión.
- Al Medir para una vista XY o un canal de datos con una medición de ajuste de curva y la opción User check positions seleccionada, la línea de ajuste mostrada era para el paso anterior.
- En el Output sequencer, una etiqueta sin espacios en blanco después de los dos puntos se trataba como un error, por ejemplo, "Label:DAC 0,1".
- El compilador de script daba un error si una declaración de resize no terminaba con un punto y coma, por lo que var y[2]; if 1 then resize y[3] endif , no se podía ejecutar.
- Los comandos de script ArrConv(), ArrCWT(), ArrDot(), ArrFilt(), ArrHist(), ArrSpline() y SerialWrite() no aceptaban matrices de const.
- El comando Multimedia files del menú View no podía abrir archivos .mp4 si solo contenían audio (sin video).
- En los cuadros de diálogo de Spike shape, el efecto visual al hacer clic en el área de datos para comenzar a arrastrar el pico actual a una plantilla era demasiado rápido y no se podía ver.
- Retroceder por un punto de datos en un canal virtual (por ejemplo, con el comando de script LastTime() o una búsqueda de active cursor en el modo Data points ), pasaba por dos puntos de datos.
- Los títulos de columna predeterminados de la vista de cuadrícula omitían la serie AA-AZ cuando se configuraban más de 26 columnas. La secuencia era A-Z, BA-BZ, CA-CZ y así sucesivamente y debería haber sido A-Z, AA-AZ, BA-BZ...
- Si escribió datos en un canal sin forma de onda (por ejemplo, con el comando de script ChanSave() ), posteriormente lo sobrescribió (permitido con canales basados en ondas pero no con canales basados en eventos), Spike2 intentaba escribir los datos, lo que resultó en un canal de datos alterado.
- El script MLPut(500); Proc MLPut(real) MatlabPut("RealVal", real) end; asignaba a la variable Matlab RealVal un número entero, no un valor de punto flotante. Esto se debía a una optimización demasiado entusiasta por parte del compilador de scripts.
|
|
06/2021 |
9.14 |
Nuevo
- El muestreo admite la versión 5 de la especificación Talker, que potencialmente tiene transferencias de datos más eficientes.
Fijaciones
- Algunos diálogos de selección de Font no configuraban el campo Font Style para que coincidiera con el estilo de la fuente inicial (Bold, Italic, Regular...).
- Las búsquedas del canal Event (como en Active cursors, Measurements to an XY view o Measurements to a data channel) diferentes al modo Data points o Expression podían fallar.
- Al restaurar los modos de trazo Rate y Mean frequency desde un archivo de recursos, se rechazaban los valores de Time width excesivamente bajos.
- La casilla de verificación del diálogo Tip of the Day funciona de forma fiable.
- El diálogo Add to online marcó todas las arbitrary waveforms excepto la agregada como deshabilitada.
- Si al muestrear datos configura una Measurement to an XY view o Measurements to a data channel con un valor User entered, podría bloquearse Spike2.
- El elemento del context menu para establecer una posición vertical cursor no desencadenaba una búsqueda del active cursor.
- El comando de script BinomialC (n%, k%) no permitía que n% ni k% fueran 0.
- En los non-PCA Clustering dialogs (por ejemplo, Cluster on Measurements), el comando para configurar el Z axis a la hora podría borrar todos los códigos de filtro (por lo que los puntos de colores se vuelven negros).
- La exportación de datos XY a MATLAB exportaba varias copias del primer punto de XY.
- El comando de script ChanKey (chan%, get%) generaba un error si get% no era cero.
|
|
02/2021 |
9.13 |
Fijaciones
- El uso de los comandos de script BReadSize(8,...) o BWriteSize(8,...) con un argumento de un arreglo de enteros, podría hacer que Spike2 se bloquee.
- Cuando se usaba con una unidad Micro3, Micro4, Power2 o Power3, el argumento pos% del comando de script PlayWaveStatus$() notificada la posición en bytes y no en puntos. Este error se presentó por primera vez en Spike2, versión 7. Las unidades Micro2 y Power1 no se vieron afectadas.
- En un script, -1 >> 64 evaluado en 0; debería evaluarse en -1.
- Al muestrear o volver a ejecutar con un canal de eventos de Level visible en el modo de trazo Line, el puntero del ratón puede parpadear.
- Al muestrear o volver a ejecutar, era posible hacer que Spike2 dejara de responder al procesar Measure to Chan en modo Automatic con Update window every configurado con 0.0 al buscar un canal de Waveform con una frecuencia de muestreo baja.
- Un vaciado de texto de la configuración de muestreo nos separaba los canales digitales y DAC.
- El comando de script MinMax() utilizado para buscar un canal WaveMark con n trazas, podría iniciar demasiado pronto la búsqueda (n-1) veces la duración el pico.
- Si tiene una unidad CED1902 y una Micro1401-4, la configuración del Conditioner notificaba un error falso de "argumentos ilegales" después de configurar el 1902.
- El diálogoThe Create New Buffer permitía crear un canal WaveMark con menos del mínimo de puntos de datos (6).
- El comando de script SampleWaveMark() no permitía definir canales multitraza con un número impar de puntos de datos.
- Si se presentaba un problema de disco al actualizar la información de la licencia de Talker, podría fallar Spike2.
- El importador EDF ahora admite datos de enteros asimétricamente escalados; anteriormente, dichos canales tenían desfases incorrectos.
- Al editar texto en una celda de vista de cuadrícula, la tecla Supr no borraba los caracteres que estaban a la derecha de la careta de texto.
- Ya no se impide agregar un canal Talker a la configuración de muestreo porque se ha alcanzado el limite sobre el número de 1401 canales.
- El comando de script SampleCalibrate() devolvía el doble del factor de escala que se había fijado cuando se configuraba 1401 para el rango de entrada de 10V.
- Active cursor Peak search con una Amplitude configurada con 0 podía detectar como un pico dos puntos consecutivos con el mismo valor de datos.
- Trazar un canal Waveform excesivamente ampliado podía generar datos que aparecían fuera de la parte inferior de la pantalla.
- Agregar y eliminar elementos de Level event del canal de Memory no hizo que la pantalla se volviera a dibujar hasta el final.
- En una Result view, no se guardaban los ajustes Sweeps, Sort y Symbols del modo Raster Draw y se restablecían cuando se guardaba la vista en un archivo.
|
|
09/2020 |
9.12 |
Nuevo
- El importador EDF ahora reconoce más tipos de archivos BDF. Antes, algunas especificaciones no se reconocían y el importador volvía a importar los datos como si fueran de 16 bits de longitud y no de 24, lo que daba lugar a datos basura.
- En un script, puede usar DlgValue$() para establecer los campos de X Value como texto, por ejemplo, "Cursor(1)". Anteriormente, esto mostraba la posición del cursor 1 como un número.
- El programa S2Video tiene una nueva opción para establecer las marcas de tiempo de los recuadros.
Fijaciones
- El botón Add... del diálogo Sample Bar no leía la etiqueta ni el comentario del archivo agregado y aceptaba el viejo formato de los archivos .s2c que no puede usarse en las versiones modernas de Spike2.
- La vista XY y el título del eje no se restauraban cuando se abría el archivo XY.
- En una vista Grid, la tecla F1 no abría la Help en línea.
- Las vistas Time finalizaban un píxel antes del último elemento.
- Si un script ocultaba o iconizaba la ventana de la aplicación y luego usaba los comandos Message() o DlgShow(), se ocultaba la ventana resultante y el script fallaba. Estos comandos ahora hacen visible la ventana de la aplicación.
- Había un problema al trazar un canal de eventos de nivel durante el muestreo en el modo de muestreo cronometrado cada vez que se habilitó el muestreo, cuando la posición actual era visible y no en el borde derecho de la ventana de tiempo.
- En el secuenciador de salida con una unidad Micro4, la instrucción DELAY 0 producía una demora muy prolongada (más de 4.000 millones de pasos); no debería haber causado ninguna demora.
- En la ficha Channels del diálogo Sampling Configuration al utilizar un archivo con más de 32 canales, el comando de canal New...->Talker fallaba cuando los canales 1-29 estaban todos en uso y no se habían movido los canales "especiales".
- El campo Special channels del diálogo Sampling Configuration->Set maximum channels siempre se ponía en 0 cuando se abría el diálogo.
- La documentación mostraba incorrectamente las expresiones del diálogo CXn como CnX (n = 0-9).
- La grabación de los diálogos con las posiciones del eje X no traducía CXn por CursorX(n).
- El diálogo de canal Memory buffer->Import no desactivaba OK y Apply si el campo Size/Level no era válido.
- El comando de script FileList() no funcionaba con type% configurado con 12 (archivos XY) y 17 (archivos Grid).
- El comando de script SampleConfig$(3) colocaba el comentario del canal TextMark en la columna errada.
- El compilador de script no generaba un error si se pasaba un arreglo a una función definida por el usuario donde no se esperaba ningún arreglo ni argumento sin referencia.
- Las medidas Mean in X y SD in X en una vista Result daban resultados en píxeles, no en las unidades del eje x.
- La grabación de Ctrl+A (o un clic debajo de los números de canal) en las vistas Time y Result generaba un código que no funcionaba.
- Si el Line thickness de los ejes se configuraba con 1 píxel en el menú Edit, ficha Preferences->Display, era posible que el desplazamiento de los ejes dejara polvo de píxeles.
- Los canales sobretrazados trazaban el fondo con demasiada frecuencia, lo que a su vez generaba una mala visualización durante el desplazamiento lateral cuando se activaba la cuadrícula o el canal sobretrazado superior tenía el color de fondo programado para sobrescribir el color de la vista.
- El uso de FiltApply(-1,...) antes de crear el filtro temporal, haría fallar a Spike2.
- Cambiar las opciones en S2Video Configuration podía hacer desvanecer la pantalla de vídeo.
|
|
06/2020 |
9.11 |
Nuevo
- El comando de script PlayWavePoints() ahora puede notificar el número máximo de puntos en un área.
- Puede usar el comando de script ToolbarEnable() para detectar si una función Idle está configurada para la barra de herramientas y para contar el número de botones habilitados.
- Se mejoró el comportamiento de los controles del dispositivo deslizante en un diálogo definido por el usuario cuando se configuran con el modo de números enteros y se usan las teclas de flecha.
Fijaciones
- XY Autoscale, Track con límite de zoom no funcionaban correctamente.
- Una vista de cuadrícula modificada podía captar el foco de entrada una vez cada 5 minutos.
- El comando de script ChanFit() no aceptaba el argumento 1.
- Cuando los cursores tenían más de 1 px de ancho, no era posible dejar el 'polvo de pixel' al trazar elementos como la clave del sonograma.
- El uso del botón New Horizontal cursor agregaba un cursor al menor canal visualizado con un eje y, incluso cuando era un miembro de grupo (cuando el cursor debería estar oculto), generando un estado visible incoherente. Ahora, agregamos el cursor al canal principal del grupo.
- La grabación del muestreo en un nuevo archivo .smr de 32 bits, se grababa como el muestreo en un archivo .smrx de 64 bits, excepto que se configuraran más de 32 canales.
- La grabación del muestreo en un nuevo archivo de datos no grababa los períodos de anulación de saltos negativos.
- La grabación del muestreo de un canal WaveMark multitraza con puertos no secuenciales, se grababa con puertos secuenciales.
- La grabación del muestreo con Triggering configurado con Not triggered no grababa, se usaba el modo Use previous trigger.
- El comando de script MousePointer() no retornaba 0 cuando se usaba para cargar un archivo de imágenes de cursor .cur o .ani que no existía.
- Al grabar el diálogo Marker filter, el comando de script MarkTrace() configuraba el canal erróneo y aparecía para los canales no WaveMark.
- Cuando se usaban los comandos de script LastTime() y NextTime() con los datos de WaveMark multitraza y el cuarto argumento era un vector, los datos devueltos siempre eran la primera traza, no la traza establecida por MarkTrace().
- El valor que retornaba el comando de script ToolbarEnable(n%) cuando el botón n% no existía, era 0 y -1 como estaba documentado.
- La grabación de la creación de una vista de cuadrícula no establecía el tamaño de la cuadrícula.
- Los comandos de script DrawMode(), MinMax() y ChanValue() ignoraban el argumento edge% en los modos de trazo 11 y 12 (los modos BPM) de la Vista de tiempo.
- Cuando la vista actual era una Grid, la ventana Global Debug mostraba el tipo de ventana como "Unknown" (desconocida).
- En el Graphical output sequencer, las salidas Digitales y las entradas simultáneas del Digital Marker, no se secuenciaban correctamente.
- Las vistas Grid siempre se guardaban en archivos .s2gx, incluso cuando el usuario pedía que no se guardaran.
- Cuando se cargaba una Grid desde un archivo .s2gx, no se actualizaba la fuente que se utilizaba para editar las celdas de la cuadrícula.
- En el Graphical output sequencer, en los Section settings, cambiar el comentario de la sección no permitía al botón OK aplicar el cambio.
- En los diálogos Cursor Values y Cursor Regions, el primer botón de radio (para C0 y C0-C1) no tenía ningún efecto.
|
|
02/2020 |
9.10 |
Nuevo
- Al inicio, Spike2 trata de crear cualquier carpeta especial faltante. Esto puede ayudar a evitar errores relacionados con privilegios en sistemas que usaban varias cuentas. Al inicio, si no se podían crear las carpetas faltantes, se enviaban avisos a la vista del registro.
- Se agregó FilePath$(-6) para reportar la ruta del archivo Program Data.
- El botón Copy del diálogo About Spike2 copia la información de la ruta del archivo con fines de diagnóstico.
- Se modificó el importador BIOPAC para procesar los archivos de viejos formatos a los que le faltan datos al final.
- FileList() acepta un valor de 17 para type% cuando se trata de vistas de cuadrícula.
- FileName$() ahora puede reportar nombres de archivo de ventanas multimedia.
- MMPosition() se ha ampliado para reportar el estado de vinculación del cursor 0 y si se ha completado una búsqueda o ejecución de operación comandada.
- La documentación de ChanProcessAdd() ahora incluye a Debounce (PType%=12) y también describe los valores de argumentos predeterminados para todos los procesos.
Fijaciones
- Si el muestreo de los canales utilizados para la entrada de una unidad 1401 no eran consecutivos a partir de 1, los diálogos de forma de pico en línea Edit WaveMark no ajustaban ningún valor ni visualizaban los datos no accionados.
- La visualización de los datos de fondo en los diálogos de forma de pico en línea podía desaparecer si se cambiaba el canal.
- El valor de 6 de FileList() type% ya no coincide con *.cfg; ahora solo coincide *.cfgx.
- En el secuenciador de salida, el comando Format convertía el caracter "-" del código "WAVEGO,-,OptLab" en un espacio, que no compilaba.
- En el diálogo del modo Draw, la grabación de los datos de RealMark, trazados como una forma de onda en el modo Dots, grabada de manera incorrecta el tamaño de los puntos.
- Si se usaban los comandos de script PlayWaveCopy(), PlayWaveKey2$() o PlayWavePoints() cuando ningún 1401 estaba abierto para el muestreo, el script se detenía con "Interpreter error (call CED): -581". Estos comandos ahora generan el mensaje de error correcto.
- Cuando se abrían y se cambiaban diferentemente dos o más ventanas de clasificación de Spike, cambiar los canales puede producir una imagen confusa.
- En una vista XY, el comando de script ChanColourGet() no anulaba correctamente el fondo (item% = 0).
- En el editor de texto, las teclas Arriba/Abajo del teclado Alt+numérico ya no desplazan una línea hacia arriba y hacia abajo la selección actual, al liberar la tecla Alt, reemplazaban las líneas desplazadas con el carácter generado por las pulsaciones de Alt+teclado. Use las teclas Alt+Arriba/Abajo para mover las líneas seleccionadas.
Cambios
- Se ha cambiado de una forma no compatible la relectura del estado del comando de script ChanDecorate(); anteriormente no se podía releer el modo sin configurarlo.
- Si creó una configuración de muestreo a partir de un script que incluía datos de WaveMark (formas de punta), y no usó los diálogos de configuración de forma de punta para generar las plantillas y establecer los niveles de activación, los niveles de activación de detección de forma de punta se configuraban con 0. Esto podría ocasionar la captura inesperada de puntas muy pequeñas, activadas por el ruido. Los niveles de activación ahora se configuran con la mitad de la escala completa en esta situación.
- El método abreviado del teclado para formatear una secuencia de salida ha cambiado de Ctrl+F4 por Mayús+F4. Con esto Ctrl+F4 queda liberado para la función estándar de Windows de Cerrar ventana.
|
|
11/2019 |
9.09a |
Nuevo
- Hemos eliminado que al arrastrar el cursor 0 se quedaba 'pegado' cuando estaba vinculado a una ventana de vídeo.
Fijaciones
- Se ha eliminado la falsa advertencia sobre la refrendación de controladores durante la instalación en Windows 10 de 64 bits, versión 1909 (19H2)
Cambios
- El comando de script MMPosition() ha cambiado el paso por el código del recuadro de 3 a 4.
|
|
11/2019 |
9.09 |
Nuevo
- Hay un nuevo importador de archivos de datos para los archivos ADInstrument Labchart.
- El comando de script Selection$() ahora funciona en una vista de cuadrícula.
Fijaciones
- Las lecturas cortas de datos de WaveMark (formas Spike), como una Waveform, pueden fallar a la hora de obtener los datos cuando el pico era el último elemento en una memoria tampón interna; por lo general una vez cada pocos cientos de elementos.
- El editor de secuencia gráfica le permitía modificar los valores de los ajustes DAC cuando ningún DAC estaba habilitado.
Cambios
- Cuando la posición de la ventana multimedia está vinculada al Cursor 0, ahora espera hasta que se actualice la pantalla cuando el usuario arrastra el cursor. Con el formato de archivo MP4, una operación de búsqueda multimedia parece que cancela las solicitudes en curso y, por consiguiente, las solicitudes de posición de vídeo repetidas (por ejemplo, al arrastrar el cursor), no tienen ningún efecto hasta la última solicitud. Este cambio puede hacer que el cursor se sienta 'pegado' porque espera a que se actualice el vídeo.
|
|
10/2019 |
9.08b |
Nuevo
- El Micro1401-4 está soportado.
|
|
09/2019 |
9.08a |
Fijaciones
- El comando de script MemSetItem() generaba resultados incorrectos para un canal WaveMark con varias trazas cuando el argumento code% no era un arreglo.
|
|
09/2019 |
9.08 |
Nuevo
- La declaración de script const puede inicializar constantes simples con expresiones variables. Anteriormente, solo se podía inicializar con valores conocidos en el momento de la compilación.
- El importador de archivos TDT ahora puede importar datos de archivos .sev referenciados por el archivo .tsq.
- El comando de script FileConvert$() para el importador de archivos Neuralynx ahora acepta rutas de acceso relativas. Anteriormente necesitaba la ruta de acceso completa.
- El comando secuenciador WAVEGO ahora permite usar una opción de no flag ('-') para poder usar la etiqueta opcional con el parámetro no flags.
Fijaciones
- Los cambios a la casilla de comprobación Digital marker Record data en el editor gráfico de secuencia, no se detectaban durante el muestreo y por consiguiente, no podían aplicarse.
- Cambiar el texto de una barra de herramientas o barra de interacción, actualizaba toda la pantalla y, por consiguiente, algunas operaciones de script se volvían muy lentas.
- Grabar los cambios realizados a Titles o Units de los canales RealMark del diálogo Channel Information, generaba un código incorrecto.
- Grabar los cambios realizados a Title o Units del eje y de una vista XY, generaba un código incorrecto.
- Cambiar el número de barridos en una vista de resultados con el comando de script Sweeps() no marcaba el documento de resultados conforme a lo modificado y, por consiguiente, no se guardaba automáticamente.
- El comando de script LastTime() fallaba en un canal de forma de onda cuando se aplicaba Interpolate channel process.
Cambios
- El comando de script ToolbarText() ya no fuerza las actualizaciones de la pantalla, ahora espera a que Spike2 tenga un tiempo de inactividad.
|
|
08/2019 |
9.07 |
Nuevo
- Hemos mejorado la velocidad de MMImage() y MMPosition() para los archivos AVI.
- MMImage() ya no hace que la ventana de vídeo parpadee.
- Se han modificado las etiquetas y el texto del botón S64Fix para aclarar lo que debe hacer el usuario para arreglar un archivo.
- Tratamos de sobrellevar la lectura de un archivo de recursos con un encabezado válido, pero con el contenido alterado.
Fijaciones
- El diálogo X Axis en el modo Time of Day trataba las palabras clave Maxtime(), XLow(), XHigh() y Cursor(n) como compensaciones de tiempo desde el inicio del archivo sin agregar la hora de inicio del día. Esto puede generar pantallas o mensajes inesperados o desactivar el botón Draw debido a un margen de tiempo imposible.
- El diálogo X Axis en el modo Time of Day redondea los tiempos Left y Right visualizados a un decimal más que el que usa la pantalla actual del eje x. Esto podía hacer que las horas de inicio y fin que superaban el margen de tiempo disponible, desactivaran el botón Draw.
- Las formas de onda no se visualizaban en algunos monitores si se hacía zoom varias veces hasta que el espacio entre las muestras de forma de onda fuera de muchos millones de píxeles.
- Si visualiza muchos más puntos de forma de onda que los píxeles de la pantalla, trazamos los datos en forma 'comprimida' para ahorrar tiempo. Si la anchura del lápiz estaba configurada con más de 1 píxel, las secciones horizontales de los datos se visualizaban con una anchura de 1 píxel en lugar de la anchura del lápiz solicitada.
- En el importador binario, se ignoraban las frecuencias de muestreo de canal, establecidas canal por canal.
- En el importador binario, la modificación de un canal individual podía ser que se alteraran otros aspectos de la información del canal.
- La instrucción del secuenciador de salida WAVEGO siempre ha permitido una etiqueta opcional, pero esto no estaba documentado.
- El comando de script EditCopy() para copiar un arreglo como un mapa de bits tiene una pérdida de recursos y, por consiguiente, se ralentiza y eventualmente se detiene Spike2.
- Era posible hacer caer la unidad Power3 o 3A con una configuración específica de muestreo (16 canales de forma de onda muestreados a ~32 kHz en el modo de ráfaga). Los síntomas típicos de este problema son: el muestreo no inicia y en el 1401, los LED DAC 0 y 1 parpadean.
|
|
04/2019 |
9.06 |
Nuevo
- La aplicación s2video ahora usa archivos .mp4 con una mejor sincronización de recuadros y se conecta con más fuentes de vídeo. La función multimedia de Spike2 lee archivos .mp4 y .avi.
- Se ha agregado la aplicación mp4comp para comprimir fuera de línea archivos de vídeo .mp4.
- Se ha ampliado el comando de script EditPaste() para pegar un mapa de bits del portapapeles en una matriz de enteros.
- Se ha ampliado el comando de script EditCopy() para copiar matrices de reales y enteros en el portapapeles como mapas de bits.
- Nuevo comando de script EditImageSave() para guardar imágenes de mapas de bits del portapapeles en un archivo.
- El comando de script Spline2D() puede usar escalas de color para definir colores de mapeado.
- El comando de script Spline2D() puede generar una cuadrícula rectangular de valores interpolados además de la salida en formato de mapa de bits de enteros.
- Mejoras al diálogo Colour scale para previsualizar las escalas de color y registrar los cambios.
- El comando de script ChanKey() acepta las claves de escala de color con los mapas de bits de fondo generados por el comando Spline2D().
- Nuevo comando de script HCursorVisible().
- Si se desconecta el 1401 durante el muestreo (se desconecta el cable o hay una pérdida de potencia), se detiene el muestreo inmediatamente. Anteriormente, había un retraso de varios segundos mientras transcurría el tiempo límite de desconexión.
Fijaciones
- En las versiones 9.00 a 9.05 de Spike2, el comando CHAN Vn,n del secuenciador de salida retornaba los datos del canal enésimo secuenciado y no del canal n. Muchas configuraciones de muestreo utilizan canales secuenciales iniciando en 1 y funcionan conforme a lo previsto. Sin embargo, si el canal n estaba por encima de un intervalo en la lista de canales muestreados, se referencia el canal erróneo. Por ejemplo, si se saltaba el canal 1 y se muestreaban los canales 2 y 3, el comando CHAN V1,2 lee el canal 3, el segundo canal muestreado y no el canal 2.
- El comando de script Spline2D() podía generar resultados incorrectos cuando la matriz de imágenes 2D era un subconjunto de una matriz mayor.
- Las búsquedas hacia atrás durante el muestreo de eventos muestreados recientemente, podía encontrar eventos en tiempos anteriores al inicio del margen de tiempo de la búsqueda.
|
|
02/2019 |
9.05 |
Nuevo
- La salida de forma de onda de un gran número de puntos de un metaarchivo con un lápiz ancho ya no usa rectángulos rellenos porque esto hacía fallar varios programas comúnmente utilizados a la hora de importar imágenes.
- El diálogo Overdraw 3D ahora recuerda el estado de la casilla de verificación Automatic display update por archivo.
- Ahora permitimos que las funciones de script tengan más de 20 argumentos.
- Se han modificado los importadores Bionic y Ripple para poder importar archivos de gran tamaño (más de 500 GB). Los importadores ahora funcionan casi a la misma velocidad de la función de copia de archivos (15 minutos para 500 GB en lugar de un día).
- Se ha implementado un sistema de licencia para Talker. Este sistema nos permite actualizar el pago de Talkers desde nuestro sitio web, sin embargo los usuarios deben aplicar una clave de licencia a su copia de Spike2. Las licencias de Talker están vinculadas al número de serie de Spike2.
Fijaciones
- El orden de los canales de los canales Raster de la vista Result no se restablecía con base en las configuraciones de muestreo.
- Trazar un histograma que excede en gran medida el margen y de la ventana de visualización, podía hacer caer Spike2 en Windows 10.
|
|
09/2018 |
9.04b |
Fijaciones
- Si un archivo importado tiene 32 o menos canales, el número de canales en el archivo de salida se limitaba a 32, independientemente del argumento FileConvert$() minCh%.
- Importar ciertos archivos de datos de Multichannel Systems podía hacer caer a Spike2.
- La opción de la ficha Display del diálogo Preferences del menú Edit para desactivar high DPI awareness, ahora funciona correctamente.
|
|
09/2018 |
9.04a |
Nuevo
- El comando Import del menú File ahora tiene un subcomando de Options... para establecer el número mínimo de canales en un archivo importado.
Fijaciones
- If an imported file has 32 or fewer channel, the number of channels in the output file was limited to 32, regardless of the FileConvert$() minCh% argument.
- Importing certain Multichannel Systems data files could crash Spike2.
- The Edit menu Preferences dialog Display tab option to disable high DPI awareness now works correctly.
Cambios
- En la ficha Automation del diálogo Sampling Configuration, el límite del tamaño del archivo ahora se muestra en MB (megabytes) en lugar de kB (kilobytes).
|
|
08/2018 |
9.04 |
Nuevo
- FileTime$(), FileDate$() y FileTimeDate() ahora pueden usarse con otras vistas además de las vistas de Time.
- El menú Sampling tiene nuevas opciones para manejar Talker Licensing.
- Los cambios de la selección de canales en una vista de Resultados se transfieren a las listas de canales de diálogo.
- Se ha ampliado el comando de script FileName$() para facilitar las manipulaciones más comunes de nombre de archivo.
- El diálogo Channel Process ahora puede eliminar los procesos de los canales seleccionados. Se ha ampliado el comando de script ChanProcessClear() para poder eliminar los procesos de canal de los canales seleccionados y visibles.
- Hay un nuevo análisis de eventos del histograma de Frecuencias. Este es similar al Histograma de intervalos, sin embargo coloca los datos en contenedores con base en la frecuencia y no en los intervalos. El equivalente de este comando en el lenguaje de script es SetFHst().
- Le permitimos usar el comando Change Output Sequence... del menú Sample cuando un archivo de datos está listo para muestrear, pero el muestreo no ha iniciado.
- El tiempo registrado para la lectura de datos de TextMark de una línea serial es ahora el tiempo de adquisición de datos más reciente, en lugar de ser el tiempo de adquisición de datos por el que se han recibido todos los datos. La diferencia es por lo general de unos pocos milisegundos.
- El importador Intan ahora importa los formatos de archivo .rhd y .rhs. Ahora también extrae la información digital de los canales de los archivos .int.
- Los dos importadores DSI se fusionaron en un solo importador. Se realizaron mejoras menores para cuando se leen archivos antiguos.
- El importador C3D ahora importa los marcadores de eventos almacenados en el encabezado del archivo.
Fijaciones
- El campo Points del diálogo de vistas XY no puede ajustarse con ningún valor diferente de 0.
- Trazar un canal TextMark con 2000 o más elementos, puede bloquear Spike (con lo que es necesario pulsar Ctrl+Break) para poder continuar.
- El comando de script MemImport() y el diálogo interactivo no incluían la hora final en el rango importado, a diferencia de lo que se indica en la documentación.
- El comando de script ChanProcessCopy() está documentado como un comando que se usa para eliminar los procesos del canal cuando el canal de origen es 0. Este comando no hacía esto antes de la versión 9.04 de Spike2.
- Cuando un archivo de datos estaba listo para muestrear, pero el muestreo no había iniciado, el uso del comando Current en el editor de secuencia no cambiaba la sentencia actual y no podía eliminar los botones del panel de control del Secuenciador.
- En la página Automation del diálogo Sampling Configuration, si se había configurado el indicador Stop at time, el muestreo podía terminar demasiado pronto.
- Nos estaban guardando los límites del tamaño de archivo establecidos en la página Automation del diálogo Sampling Configuration.
- El importador Plexon podía desalinear los datos de los archivos con varias secciones.
- El importador C3D podía alterar la escala del canal de datos.
- El comando Toggle Comments del editor de scripts ya no incluye la línea que va después de las líneas seleccionadas (que no suele ser lo que se quiere).
- Se ignoró el argumento minCh% para el comando de script FileConvert$().
Cambios
- Documentación de PlayWaveCopy() corregida; la operación de copia debe caber en el tamaño de onda de reproducción actual, incluso cuando es menor que el tamaño del área.
- Hemos limitado el número máximo de contenedores en una lista de resultados a 100.000.000 (en correspondencia con el límite para el tamaño de los arreglos del lenguaje script). El límite anterior era de más de 2,000,000,000 de contenedores, que servía en una versión de 64 bits de Spike2, sin embargo, hacía que el programa fuera demasiado lento y no respondiera apropiadamente.
|
|
05/2018 |
9.03a |
Nuevo
- La grabación de la creación de una vista XY para retener las medidas, generaba un comando ChanKey() antes de que existiese la vista XY, que no funcionaba.
- La grabación de un cambio al estado de la clave del canal XY grababa el estado anterior y no el nuevo estado.
- Turn Recording Off no mostraba la nueva vista manteniendo al frente el script grabando (así que, podría quedar detrás de las otras ventanas).
|
|
05/2018 |
9.03 |
Nuevo
- El importador de archivos .wav de Microsoft ahora puede importar archivos que tienen datos de 32 bits, anteriormente solo se podían importar archivos de datos de 8 16 y 24 bits. Los archivos de datos de 24 y 32 bits se importan en forma de canales RealWave, y los archivos de datos de 8 y 16 bits en forma Waveform.
- ChanFitValue() tiene un argumento adicional opcional para notificar si hay un ajuste en el canal.
- Se ha ampliado el importador de archivos Heka para poder importar varias trazas y manejar archivos con más de 100 series de datos.
- Se ha ampliado el importador C3D (Motion Lab Systems) para poder desglosar plenamente la sección Parameter del archivo e importar la descripción de canales y escalar y compensar correctamente los canales.
- Los importadores Ripple y Bionic/Cybernetics ahora tratan de integrar varios archivos de la misma sesión de grabación en un solo archivo de salida.
- Ahora puede registrarse la apertura de un archivo de configuración de Muestreo.
- Al muestrear datos en el modo de visualización activado, ahora puede suspender las actualizaciones automáticas seleccionando un punto de activación anterior y reactivarlas desplazándose hasta el final de la vista.
- Se ha extendido el importador AlphaOmega para leer los comentarios de datos del Stream como un canal TextMark.
- En Talkers, se mejoró la cancelación de la variación de tiempo durante la fase de medición inicial.
- Se puede agregar una barra de avance a un diálogo definido por el usuario con el nuevo comando de script DlgProgress().
Fijaciones
- No se podía crear una Medición en línea para la vista XY o la Medición de un Canal de datos antes de iniciar el muestreo, si cualquier expresión del diálogo del eje X referenciado devolvía un resultado negativo. Por ejemplo, el uso de las expresiones Maxtime() o Maxtime(n) no daba ningún resultado porque cuando se configuraban éstas expresiones, no se había transferido el tiempo y ambas expresiones devolvían -1 que se trataba como si fuese un error.
- El importador C3D (Motion Lab Systems) podría confundir las etiquetas de canales, escalas y unidades entre datos de puntos 3D y canales ANÁLOGOS. Los archivos con canales ANÁLOGOS que almacenaban varios puntos por recuadro de vídeo en formato de punto flotante podían importar puntos espurios.
- El comando FIRQuick() podía hacer fallar a Spike2 si usaba combinaciones extrañas de argumentos de frecuencia y anchura.
- Los importadores Ripple y Bionic/Cybernetics no prestaban atención a los factores de escalamiento y las unidades de canales en los archivos de origen.
- Cuando incrementábamos el número de áreas de salida de forma de onda arbitrarias en la versión 9.00, afectamos negativamente la habilidad para vincular entre sí las áreas.
- Era posible que Spike2 fallara al abrir una vista de Resultados del disco, posteriormente ejecutar el comando de script SetAverage() con la vista de resultados como la vista actual.
- Era posible que fallara Spike2 al leer una configuración de muestreo que tuviese información de procesamiento de canales o de canales virtuales, editando los canales configurados para muestreo de manera que la información de procesamiento de los canales o del canal virtual dejara de ser válida y, posteriormente, realizar el muestreo.
- Debido a un cambio en la biblioteca de Microsoft, el importador de texto se confundía con una columna de valores que contenía 'NaN', cuando anteriormente estos valores se trataban como ceros.
- El uso de los comandos de script PlayWaveAdd() o PlayWaveDelete() no ocasionaba la actualización de la barra de herramientas para reproducir la forma de ondas.
- Los cambios realizados a Talkers en diálogos de configuración de terceros no siempre se aceptaban en Spike2. Para evitar esto, la información de Talker ahora se actualiza después de cargar una configuración de muestreo.
- Si se llegase a alterar la información almacenada de sesiones anteriores de Talker, no podrán usarse los Talkers. Spike2 ahora detecta esta situación y elimina el archivo alterado y se pueden usar los Talkers.
Cambios
- Anteriormente, si el último elemento de los datos de un archivo era un WaveMark (pico), la forma de onda del pico no era visible porque el tiempo del elemento (utilizado para establecer el tiempo máximo en el canal) es el tiempo del primer punto de la forma de onda. La anchura de las vistas de tiempo que contienen canales WaveMark se ha incrementado por la anchura del pico más amplio para garantizar la visibilidad de todas las formas de onda.
|
|
01/2018 |
9.02a |
Nuevo
- El importador BIOPAC ahora puede importar archivos big-endian de formatos viejos. Para importar los archivos ACQ modernos, los usuarios también necesitan el paquete BIOPAC ACKAPI.
|
|
12/2017 |
9.02 |
Nuevo
- Se ha ampliado Channel Process para dar cabida a los cambios de tiempo de los canales de eventos y al antirrebote de eventos y los canales de eventos de Nivel.
- El comando de script ArrCWT() calcula el valor de Continuous Wavelet Transform de un arreglo de datos.
- El comando de script ArrMapImage() convierte a una matriz en un mapa de bits mediante una escala de color.
- Se ha ampliado el comando de script ChanOrder() para obtener una lista de todos los canales, en orden, incluidos los canales ocultos.
- Se ha ampliado el comando de script ChanList() para manipular las listas de canales.
- Se han ampliado las expresiones de diálogo con funciones aritméticas.
- El comando de script XRange() puede usarse como el equivalente del botón Show All del diálogo X Axis Range.
- Los menús de contexto del Cursor para Lock to Cursor (a otro cursor) ahora tienen una opción para desbloquear e indicar a qué cursor está bloqueado.
- El comando de script ArrRange() encuentra el rango de datos en un arreglo.
- El editor de scripts puede desplazarse a la siguiente y anterior función o inicio de procedimiento haciendo clic con el botón secundario sobre el menú de contexto.
- Hemos mejorado la compatibilidad para imágenes de canal extremadamente grandes (más de 32767 px de ancho o alto); anteriormente no era posible trazar estas imágenes.
- Puede deshabilitar el uso del archivo de configuración DEFAULT.s2cx en la ficha Edit Preferences Sampling.
- Puede hacer clic con el botón secundario sobre la barra del título del diálogo Sampling Configuration para copiar la ruta del archivo de configuración actual en la papelera.
- Se ha ampliado el comando de script EditPaste() para notificar el contenido de la papelera y copiar un mapa de bits de la papelera en el arreglo de un script.
- El comando de script VirtualChan() puede crear un nuevo canal con un número de canal mayor que los canales existentes, además de crear en el canal más bajo disponible.
- Los canales RealMark con varios valores de datos adjuntos, pueden tener títulos y unidades aparte para cada elemento cuando los datos se almacenan en un archivo de datos smrx de 64 bits. Hay nuevas variantes de los comandos de script ChanTitle$() y ChanUnits$() que permiten realizar esto. Se ha ampliado el diálogo Channel Information para dar cabida a estas nuevas funciones.
- Ahora puede determinar qué celdas están seleccionadas en una vista de cuadrícula con el nuevo comando de script Selection().
- Al muestrear con Write to disk deshabilitado, se trazan muchos más elementos en Not saving to disk colour y se muestra su estado de no guardado al volver a visualizar los datos. Los datos de forma de Spike2 siempre muestran los datos en el color que corresponde al estado clasificado. Los datos de marcador trazados en el modo State muestran el color original y el color no guardado.
- Anteriormente, algunos canales que se podían trazar en Not saving to disk colour solo hacían eso al trazar al final de un archivo de muestreo. Ahora, siempre se trazan los datos marcados como si no hubiesen sido guardados en este color siempre y cuando los datos estén en el búfer y puedan guardarse.
- Ahora puede restablecer los colores de vistas de datos con un esquema sombreado con fondos negros, en lugar de blancos, manteniendo pulsada la tecla Ctrl mientras hace clic en el botón Reset All del diálogo Colour. Se ha ampliado el comando de script ColourSet() para poder realizar esto
Fijaciones
- El comando de menú Export As... no incluía a *.gif en la lista de formatos de archivo disponibles.
- Al iniciar el muestreo o volver a ejecutar un archivo de datos, si hacía que Spike2 recalculara el área de datos (cambiando el tamaño o mostrando/ocultando canales) antes de que la vista comenzase a desplazarse, el rango del eje X podía cambiarse a un rango establecido anteriormente.
- El diálogo TextMark en línea no guardaba/restablecía correctamente los códigos de marcador en la lista desplegable. Los códigos 0-15 del primer código de marcador funcionaban correctamente.
- El comando de script ChanMeasure() y el diálogo Cursor Regions podían incluir un punto de datos adicional en las mediciones, p. ej., Mean value, cuando se había aplicado un proceso a un canal de forma de onda, p. ej., Smooth, y el final del margen de tiempo para la medición coincidía exactamente con el tiempo de un punto de datos de forma de onda.
- En el diálogo Channel process, al editar un valor, se actualizaba el canal (tal y como se esperaba), excepto que la edición retornaba el valor al estado editado previamente.
- La grabación de Canales duplicados no hacía visible el nuevo canal.
- La grabación de cambios en la pantalla de Cuadrícula no funcionaba para la cuadrícula X o Y únicamente.
- Una imagen de canal que estaba vinculada a las coordenadas de un canal específico, podía desaparecer al ampliarla.
- Un script que creaba un proceso que escribía datos en un canal del búfer de memoria, borraba el búfer de memoria, y posteriormente repetía esta secuencia si dejar pasar el tiempo de espera del script con Yield() o un comando de interacción del usuario (Interact(), ToolBar() o DlgShow()), podía fallar.
- Los métodos abreviados de la barra de herramientas y la barra de interacción y del diálogo definido por el usuario no funcionaban si la vista actual estaba iconizada.
- Las rutinas de script ArrAdd(), ArrSub(), ArrSubR(), ArrMul(), ArrDiv() y ArrDivR() no aceptaban un segundo argumento constante.
- Importar un archivo CFS que contenga canales de datos de 64 bits con punto flotante podía generar resultados erróneos.
- La ficha Sampling del diálogo Edit Preferences no acepta un directorio que no exista, pero no explicaba el problema.
- Si abría un archivo de datos listo para muestrear, al cancelar el muestreo sin iniciar, quedaba abierta una conexión con el 1401. Desconectar o retirar el 1401 en este estado podía dificultar la recolección sin reiniciar el sistema.
- El comando de script ChanPixel() en el mode% 7 retornaba 0 al obtener el tamaño de la fuente, ahora retorna 3. Si lo usaba para obtener la información del eje y que depende de un canal, y el canal era visible, podía retornar valores incorrectos.
Cambios
- Anteriormente, cuando un script creaba una nueva vista que era visible, se seguía desplazando al frente de todas las vistas y se daba el enfoque de entrada. Esto hacía que se volviera a pintar la barra del título de la aplicación y la barra del título de la vista que anteriormente tenía el enfoque de entrada. Ahora, si una vista se crea de manera invisible, no se desplaza al frente. Esto reduce el destello de la pantalla y agiliza algunos scripts. Sin embargo, los scripts que utilizan una vista invisible recién creada que tenga el enfoque de entrada, precisarán de cambios.
|
|
09/2017 |
9.01 |
Nuevo
- Ya puede crear canales RealWave para muestreo. Cuando se usa con un acondicionador de señales programable, puede aplicar variaciones de ganancia durante el muestreo que no afectan los datos previamente muestreados.
- La forma de onda virtual WEnv() ahora puede usar las funciones coseno y coseno elevado para las fases de aumento y caída.
- Al seleccionar un puerto COM para un acondicionador de señales, ahora solo ofrecemos los puertos que existen y proporcionamos más información para identificar el puerto.
- Los números de canal del Talker ya no están limitados al rango de entre 1 y 100.
- Los canales generados por el Talker ahora pueden usarse como disparadores para realizar el muestreo disparado.
- El número total de canales muestreados por una interfaz 1401 sigue limitado a 100, sin embargo los números de canal que les asigne, ya no están limitados al rango de entre 1 y 100.
- Al muestrear, puede mover el marcador del teclado, los canales de marcador TextMark y Digital de manera que no interrumpen el rango de canales de los otros canales.
- Al depurar un script, puede editar y visualizar las variables de cadena en un editor de varias líneas.
- Se ha ampliado el comando de script FileApplyResources() para poder controlar parcialmente los recursos a aplicar. También puede aplicar los recursos creados mediante una vista de la vista actual sin crear un archivo de recursos nombrado.
- El diálogo About Spike2... del menú Help de Spike2, ahora incluye el nombre de la computadora en la que está funcionando Spike2. Este es el nombre que necesitan los Talkers que funcionan en una red para acceder a Spike2.
- El acondicionador de señales D440 ahora tiene un botón para Restablecer la calibración.
- El importador Biopac ahora está disponible en versiones de Spike2 de 64 bits y está actualizado conforme a la última versión.
- Los comandos de script ColourSet() y ColourGet() ahora tienen acceso a las escalas de color, tal y como se usan en los sonogramas.
- El comando de script DlgEnable() puede usarse para controlar la visibilidad de un mapa de bits en un diálogo definido por el usuario.
- Los comandos de script CondSet() y OutputReset() tienen nuevas variantes para restablecer el estado del acondicionador y la salida.
- Se ha ampliado el comando de script System() para notificar el tiempo de la CPU utilizado por la cadena de la GUI.
- Cuando se guarda en un archivo de disco un canal que no tiene comentarios en relación con el canal, Spike2 agrega información al comentario, por ejemplo, el número del canal de origen, el canal virtual y la información de procesamiento del canal.
- La herramienta de sugerencias que se despliega al pasar el ratón sobre un canal y el eje de una lista de tiempo, ahora tiene más información sobre los procesos del canal y los trazos de WaveMark.
- Cuando los diálogos Regiones del cursor y Valores del cursor tienen el foco de la entrada (están seleccionados), ya no detienen el funcionamiento de los métodos abreviados definidos por el usuario en la barra de herramientas, la barra de interacción y los diálogos definidos por el usuario.
- El comando de script SampleText() ahora retorna la hora en la que se agregó el marcador de texto.
- Al usar Ctrl+Alt + hacer clic con el ratón para arrastrar una línea a los picos seleccionados en los modos Overdraw WM y otros modos de trazado, ahora puede usar la tecla Mayús para evitar que la línea sea horizontal.
- En el diálogo Clustering, ahora puede usar la tecla F para ajustar los eventos seleccionados (utilizando elipses o la forma definida por el usuario) al código FF. También puede ajustar todos los eventos visibles al código FF utilizando Ctrl+Mayús+F.
- En el diálogo Clustering, puede usar la rueda del ratón para cambiar la escala del tamaño de la elipse o la forma definida por el usuario.
- El comando de script System$() tiene una nueva variante para leer la línea de comando que inició Spike2.
- Ahora puede guardar los mapas de bits utilizando FileSaveAs() en formato GIF, y GIF se puede usar al cargar o guardar imágenes de manera interactiva. Estos no son GIF animados.
- Hay mejoras a los mensajes de error del compilador de scripts para ayudar a determinar la causa del error de sintaxis de un script.
Fijaciones
- Importar o exportar un archivo de datos con muchos canales (>300) y muchos Títulos, Unidades o Comentarios de canales diferentes, puede generar un archivo de datos .smrx que no se abre. Dicho archivo ahora puede repararse mediante el programa S64Fix.
- El sistema del compilador de scripts se confundía al compilar (y ejecutar) un script, compilaba un segundo script que generaba un error de compilación y finalmente ejecutaba el primer script.
- El Editor de secuencia gráfica generaba un error si se agregaba un elemento marcador con un código de 00 (que es el código predeterminado).
- Tratar de abrir un archivo de configuración de muestreo alterado, podría hacer caer a Spike2.
- El código que agrega los mensajes a las Notas de muestreo de los canales que se muestrean a una velocidad significativamente menor o mayor que la solicitada, siempre reportaba dichos canales con velocidades de muestreo menores, incluso si el muestreo se realizaba más rápido.
- El comando Import del menú File agregaba títulos de canal al inicio de todos los comentarios de canal. Ahora solo hace esto cuando el título de canal es tan largo que es truncado por el sistema de importación.
- El marcador de teclado para el fin de una sección de muestreo temporizado no se registraba en el disco.
- En la versión 9.00, el estado de muestreo inicial en el modo de muestreo temporizado o activado, era incorrecto.
- Pegar caracteres no ASCII UNICODE en una vista de cuadrícula no funcionaba.
- En el diálogo X Axis Range, el cambio de las Unidades del eje, volvía a pintar los valores de la Izquierda y la Derecha en el modo del eje anterior, no el nuevo.
- Al muestrear datos en el formato de 32 bits y posteriormente usar el comando de script FileSaveAs("", -1) para guardar el archivo, la extensión de archivo que se ofrecía de manera predeterminada era .smrx (aunque el archivo era de 32 bits y debía tener la extensión .smr). Spike2 puede leer archivos de 64 bits con cualquier extensión, sin embargo rechaza los archivos de 32 bits con la extensión .smrx.
- Al muestrear sin una unidad 1401, se deshabilita el cuadro de comprobación Trigger de la barra de control de muestreo dado que el inicio desencadenado aún no puede efectuarse sin una 1401.
- Cuando un script toca un punto de inflexión o cuando interactúa con Spike2 en una rutina de espera del script, si se ha abierto el diálogo Cursor Values o Regions, o cualquier ventana Spike-shape o Multimedia, se ajusta la vista actual del script, lo que a su vez ocasiona un fallo de funcionamiento del script con un error de "Tipo de vista errónea".
- En el diálogo Channel setup, los cambios de ganancia del acondicionador de señales D440 no actualizaban la escala del eje y.
- En la Barra de muestreo, el estado Write to Disk del modo Immediate Start funciona ahora. Si el modo Immediate Start no está habilitado, se deshabilita Write to Disk changes.
- Si se hacía un Reset al muestreo (para reiniciarlo), no se restablecían los diálogos Cursor Regions y Cursor Values.
- Grabar XAxisMode() en una vista de tiempo, podía generar valores extraños de mode% si las unidades del eje x no eran segundos.
- El comando de script SampleWaveMark() fallaba si se usaba una serie de puertos como segundo argumento.
- El comando de script SampleClear() no borraba el nombre de la última lectura de la configuración de muestreo retornada por SampleConfig$().
- Las funciones de canal virtual Ec() y Et() ampliaron su búsqueda a nivel de tick del reloj en archivos de datos de un solo evento mucho más de lo que deberían. Esto podía (en circunstancias en parte manipuladas) hacer que la función Ec() generara un recuento en el que 1 era demasiado alto. El cambio a la salida del comando Et() era por lo general demasiado pequeño para que tuviera importancia.
- La función de canal virtual WSqu() podía hacer demasiado prolongada la muestra de una fase baja.
- Si se hacía doble clic y se editaba un elemento de un canal TextMark, los duplicados del canal no se actualizaban.
- Varios comandos de script no aceptarían elementos const como argumentos cuando deberían hacerlo. Por ejemplo, SampleTrigger(), YAxisAttrib() y YAxisStyle() no aceptarían un argumento cSpc% que estaba declarado const cSpc%[3]:={2,1,2}.
- El comando MemImport() para crear un canal WaveMark a partir de una forma de onda y un canal de eventos, podía perder el último punto de forma de onda si los tiempos del evento no estaban alineados con las muestras de forma de onda.
- En una vista con un algoritmo y eje, si se ampliaba arrastrando un rectángulo, el resultado mostraba el rango del eje y erróneo.
Cambios
- El comando de script MatLabOpen() ya no detiene los scripts que presentan un error fatal cuando no puede abrirse MatLab y ahora reporta un código de error negativo.
- En el depurador de scripts, al abrir una ventana para editar una variable de cadena, ya no se selecciona la cadena inicial y la ventana de edición trata de cambiar el tamaño para acomodar el texto de la cadena.
- Los Talkers de ejemplo siempre se instalan excepto que se excluyan en una instalación Personalizada.
- La longitud máxima de los nombres de archivo automáticos se ha incrementado de 23 a 40 caracteres. Las versiones anteriores de Spike2 limitan la longitud a 23 caracteres al editar el nombre.
- Al crear un canal, los títulos y los comentarios predeterminados de los canales ahora se les asigna una cadena vacía en lugar de "untitled" y "No comment".
- Ha cambiado el valor devuelto por el comando SampleText(); anteriormente siempre retornaba 0.
|
|
06/2017 |
9.00 |
Nuevo
- El número máximo de canales que puede almacenarse en un archivo smrx de 64 bits ha aumentado de 400 a 2.000.
- El número máximo de canales virtuales, canales de memoria y canales duplicados ha aumentado a 2.000.
- El número máximo de canales en una vista XY ha aumentado de 256 a 2.000.
- El número máximo de canales en una vista Result ha aumentado de 400 a 2.000.
- El número máximo de filas en una vista de cuadrícula ha aumentado de 10.000 a 1.000.000 (el número máximo de columnas se mantiene en 1.000).
- El número de áreas de forma de onda arbitraria que puede usarse durante el muestreo ha aumentado de 10 a 62 para los dispositivos Power1401 y 20 para los dispositivos Micro1401.
- Hay un nuevo comando de script Chan() que le permite descubrir el número de canal que corresponde a una especificación de canal.
- El lenguaje de script tiene nuevos operadores numéricos para not (~) a nivel de bits y para cambiar números enteros (<<, >> y >>>) y permite el uso de & para band, && para and, | para bor y || para or, % para mod y ! para not.
- El lenguaje de script le permite usar * para multiplicar una cadena, por ejemplo, "+-"*3 es "+-+-+-".
- El diálogo para importar el búfer de memoria y el comando de script MemImport() ahora permiten importar un canal WaveMark a una forma de onda.
- El comando de script ArrHist() permite un arreglo de origen de enteros.
- Los diálogos Find y Replace del menú Edit y los equivalentes del lenguaje de script ahora son compatibles con las expresiones regulares ECMAScript.
- Es posible cambiar el tamaño de más diálogos, por lo general para poder escribir cadenas de texto de mayor tamaño o para acceder a listas largas de elementos sin desplazarse: Diálogo Virtual channel, diálogo Evaluate, diálogo Debugger edit variable, diálogo Add arbitrary wave del editor gráfico, diálogo Change Colours y otros diálogos.
- Si tiene abierto el diálogo Edit TextMark, ahora puede hacer clic en los elementos de TextMark del canal correspondiente en la vista de datos para colocarlos dentro del diálogo. Si se amplía el diálogo para mostrar la lista de los elementos de datos de TextMark, se resalta el elemento seleccionado.
- Puede muestrear datos usando Talkers sin tener un dispositivo 1401 conectado si selecciona una configuración de muestreo que no utiliza un 1401 (sin secuencia de salida, salida de forma de onda arbitraria, canales de forma de onda, canales WaveMark, eventos o entradas de marcador digital).
- El comando de script FileOpen() tiene un nuevo indicador mode% para abrir archivos de texto externos en el modo Unicode.
- () permite asociar la vista actual con una vista de tiempo, en una versión anterior tenía que ser una vista de tiempo.
Cambios
- Los números de canal para los canales de memoria, los canales virtuales y los canales duplicados han cambiado (para dar cabida a los canales de disco adicionales). Los scripts que contaban con el canal 401 como el primer canal de memoria o el 701 como el primer canal virtual, ahora se interrumpen. Siempre hemos dicho que los scripts no deben hacer esto. Puede usar Chan("m1") para obtener el primer canal de memoria y Chan("v1") para obtener el primer canal virtual. Use DupChan(0) para encontrar el número del primer canal duplicado.
- 2. Ya no leemos los viejos archivos de configuración de formato (*.s2c) o de formato de recursos (*.s2r). La última versión para escribir estos archivos era Spike2 7.10, liberada en 2012. Si necesita leer estos archivos, se pueden convertir en el formato moderno *.s2cx y *.s2rx utilizando Spike2 versión 8.
|
|