There was a limit to how much analog data could be stored in one MatOFF file. That limit was removed.
Version 0.74 Released: 7 September 2009
New MATLAB commands let you modify or add analog channels to Plexon files before conversion to Cortex. Modified analog data is stored in "external analog files". Seeexternal analog filesin mgplx2ctx documentation.
The MatOFF GUIs scale better across platforms. That is, MatOFF can now be used on an Apple Mac without looking too stupid.
To run mgplx2ctx under recent versions of MATLAB (e.g., R2009a) contact Plexon, Inc. for a new MATLAB Client Development Kit.
mgplx2ctx EOG decimation removed from the GUI and moved to the mapping file.
Fixed bug in mgplx2ctx that caused a crash when truncating the number of EOG samples.
Fixed long standing bug in SAVE LAYOUT command. Recently changed values in GUI were not getting saved to disk.
Fixed long standing bug in COPY command. Recently changed values in GUI were not getting copied.
Added "NEXT" parameter to OLD PLOT command. Adds 1 to current plot number.
Added NEXTPLOT command. Sets current plot number without plotting.
Fixed bug caused by Java accelerator inevaluatefunction of mgplx2ctx.
Recognizes Windows Vista.
Fixeddirandlscommands which failed when issued without parameters
Fixed bug inaverage analogthat gave a flat line when averaging only one trial.
Version 0.73 maintanence update Released: 28 October 2008
Small bug fix in mplx2ctx truncation of EOG file length
Version 0.73 Released: 25 October 2008
mgplx2ctx handles saturating A/D signals a little better
Some errors in the SAVE command have been corrected
VALIDATESPIKES has been better documented
CLEAN has been documented
Better error recovery if a protocol file is called from a protocol file
Version 0.72 Released: 10 June 2008
Plexon to Cortex converter
mgplx2ctx and CortexExplorer now gracefully handles data files that have only one A/D channel
mgplx2ctx is better at handling fractional sample rates.
mgplx2ctx now handles 15 analog channels. See the new mapping file rules for analog. "A" channels are the orignal two EOG channels (3 and 4). The other channels (now called "E" channels) are for slower EPP data and can be down-sampled during the conversion.
CortexExplorer - CortexExplorer will now display EPP analog data Makdat
Makdat converts EPP channels.
MatOFF supports 15 analog channels, but still only displays two at a time.
The unit name can now be accessed by History scripts.
A bug that prevented analyzing behavioral data with no spikes was caused by the new VALIDATESPIKES command. That bug was fixed.
A bug in HISTORY SPOT COLOR was fixed
A bug in the MATLAB Java accellerator caused mplx2ctx to crash MATLAB when doing two or more Plexon to Cortex conversions in a row. The bug has been circumvented.
The internal program setenv.m has been renamed to nsetenv.m to avoid conflicting with the MATLAB SETENV command
Version 0.71 Released: 8 October 2007
Spike validation now supports coloring of "invalid" spikes.
A few initialization bugs fixed.
Version 0.70 Released: 27 September 2007 [BETA]
Major revision of LOG command. Stores more information. All warnings, errors, and debug messages routed to LOG command when logging is on.
History scripts now support logging with logfile_write().
Spike validation. Spike validation marks (start and end times) when spikes are "valid". Only valid spikes contribute to the histogram. Invalid spikes are colored differently in the rasters (future). Start and end times are created and stored as history classes. WHY command tells a bit about the current file, unit, spike channel. It will be expanded to help the user figure out why an output does not look as expected.
mgplx2ctx has been completely rewritten. It provides detailed information about channel mapping, digitizing rates, etc. Has a much improved evaluation function and handles files converted to Plexon format from Alpha-Omega .MAP files.
A number of the layouts have more line colors to choose from.
The menus have a cleaner look.
Some better error checking has been added.
More examples have been added to the distribution file to help new users.
The following features are still not implemented: Average XY plots, Set/Keep Histogram, RIP, Sort Delta, Sort Integral, XY Overlap, Validate Spike Color
Version 0.63 Released: 15 May 2007
Directory structure has changed to make finding examples and documents easier.
Ezstart command. Will take any Cortex data file and rapidly create a raster/histogram plot. It comes with an example data file. Under the directory example_files there is a complete example of MatOFF with its own data file.
Poorly formatted SEQUENCE commands are handled more gracefully now.
CENTER command now supports centering on a history class. If the center value is greater than the number of sequence groups and above 99, the value will be interpreted as a class. Class values must be saved in milliseconds. Trials that do not have class values will be centered at time zero.
Environmental variable HISTORYPATH was being ignored.
Fixed. list_events() history script support function is now much more efficient.
CortexExplorer (now v1.6) numerically displays the first and last trials that an event occurs when plotting an event histogram. This helps locate which trials the event occurs.
Bug fix in count_time_spikes() example history script.
Major improvements to mgplx2ctx Evaluate function.
Version 0.62 Released: 6 October 2006 [BETA]
CENTER command now supports centering on a history class. If the center value is greater than the number of sequence groups and above 99, the value will be interpreted as a class. Class values must be saved in milliseconds. Trials that do not have class values will be centered at time zero.
Environmental variable HISTORYPATH was being ignored. Fixed.
list_events() history script support function is now much more efficient.
Poorly formatted SEQUENCE commands are handled more gracefully now.
Version 0.61 Released: 24 April 2006
Text positioning fixed. Now you can define a position relative to the current plot TEXT FRAME ON or relative to the whole page TEXT FRAME OFF.
History script can now access center and mark codes, as well as center and mark values.
SET EPOCH KEEP: the COUNT and TRIAL variables were reversed in some printouts.
COPY command with TEXT option was not fully implemented. Fixed.
COPY command did not copy text lines 8 and 9. Fixed
COPY command sometimes did not work. Fixed.
HELP COPY fixed Default sourcetrials changed from [1-200] to [1-2000] Fixed
SORT PIT. It was crashing when analog values were not found in the selected time range.
TrialFunction help documentation and error reporting improved.
A bug in MAKDAT put data from the previous Cortex file into a UNIT if the listed Cortex file was not found. Now, if any file is missing from a UNIT, the whole UNIT is invalidated.
Version 0.60a Released: 13 April 2006
mgPlx2Ctx (v0.7) has been rewritten to handle Plexon files with missing or out-of-order electrode numbers
Version 0.60 Released: 30 March 2006
This is the first new release since V0.51, so look back at all the changes.
Also, this version has two new major tools for handling Cortex files: CortexExplorer V1.5 to browse Cortex files. mgplx2ctx V0.6 a GUI-based Plexon to Cortex converter. Both tools have some very helpful features. Both tools require MATLAB R13 or later.
Version 0.51 beta5 Not released
CortexExplorer V1.01 introduced.A stand-alone MATLAB program to view the contents of a Cortex file. Requires MATLAB R13 or higher. show spiketimes updated. has new alias "spiketimes"
Makdat command can now shifts all spike times by x.x milliseconds. Shifting is used to adjust for the detection times of different spike detection systems. For example, Plexon files place the spike timestamps at the detector's threshold crossing (near the spike). BAK window discriminators place the timestamp at the last detection criterion (plus a few microseconds). Alpha-Omega MSD places the timestamp 50 us after the template window. The Alpha-Omega ASD (or AlphaLab) places the timestamp at the start of the template window. MatOFF does the shift during the Makdat step. To set this shift, use one of the following methods: Set the environmental variable: SPIKETIMEOFFSET Use Makdat List file entry: PARAM SPIKETIMEOFFSET Values greater than 20.0 ms will be tagged with a warning.
Meaningless spikes were appearing on the first clock tick of each new trial. These were showing up in the spike counts of Index and other commands. Now Makdat removes any spike that is cotemporaneous with the first clock tick of a new trial.
Some long-standing spelling errors in this revision history file have been corrected.
Version 0.51 beta4 Not released
New command: ENDIF terminates a protocol file under certain testable conditions. ENDIF NOANALOG terminates if there is no X analog data ENDIF NOUNIT terminates if the previous UNIT command failed
A hack was added to the very end of the makdat.m file. It can be used to process Cortex files that use event code 0 (normally not allowed).
Histories were not being loaded by the FILE command when FILEPATH was different from the DEFAULTPATH. That has been fixed.
Using ERROR_M in a history script caused the script to terminate. Fixed.
The Windows plx2ctx Plexon to Cortex converter program is now part of the MatOFF package
Version 0.51 beta3 Released: 23 December 2004
The scan engine has been rewritten for greater speed, especially with history scripts
A new version of plx2ctx (wplx2ctx) has been introduced. It works without needing a separate dll.
Line plots (analog, histogram, centerline, etc.) now support colored lines.
Makdat error reporting improved.
Makdat can now safely be run from either the Matlab prompt or the MatOFF prompt.
History script can now access data file name and environmental variables.
MATOFF now requires exactly one ANALOGSTART and one ANALOGSTOP in the trial to process analog data.
history_class_dump.m example script added for easy listing of history classes
MatOFF now has a FAQ. (A work in progress).
Documentation has been updated and improved, especially for the HISTORY commands.
DUMP HISTORY fixed.
XY OVERLAP ON XY plot fills whole plot. OFF is the old way with XY plot to the left of the raster.
XY TIME CLASSES truncate XY analog traces using history class values
Version 0.50 Released: 27 July 2004
MatOFF can now automatically set the A/D frequency, see FREQUENCY AUTO DUMP INDEX fixed.
HISTORY REWRITE fixed.
New History script support function: list_spikes() More graceful handling of metafile errors
More Metafile replacement variables: $1 to $9 and $A to $K
errorlevel serious - Normally each command is echoed when it is executed from the GUI or a protocol file. errorlevel serious stops this echo except for a few commands (e.g., FILE and UNIT). Use errorlevel serious at the start of a long batch file so that error messages are not missed.
errorlevel warnings - can be used at the end of the batch file to return the system to the default mode.
ANALOGSTART, ANALOGSTOP environmental variables - event codes 100 and 101 (analog start and stop) can be changed in the environment
Environmental variable menu is now more complete
New technical documentation on some of the functions used by MatOFF.
Fixed missing carriage return in DUMP SPIKES output.
Some layout parameters fixed to fix INITIALIZE and COPY commands
Fixed bug when RIP is requested (still not supported)
Version 0.49 Released: 22 April 2004 - MAJOR REVISION
Major new feature: History scripting
History commands: history file - MATLAB script called each time a trial matches the sequence history on - activate script file history rewrite - save history information with data file history spot - mark rasters using history information history data - send data from protocol file to history script
History scripts MATLAB '.m' script that can receive data from MatOFF (spike times, event codes, analog data) and store results. Results are stored as values in classes. Within a class, each trial can have a class value. These class values can be used to accept or reject trials during the sequence scan, to mark rasters on a plot, or to order the rasters on a plot. Since the History script is a MATLAB script, it can write to disk or do anything else MATLAB is allowed.
The scripts subdirectory has some useful examples of history scripts.
Sort history sort trials based on values stored in a class
Environmental variable HISTORYPATH
Documentation now includes history_scripting.html
Other new features:
Matoff now automatically detects version of Windows
Exit and Quit are different commands now. Exit leaves MATLAB altogether. Quit ends MatOFF, but keep MATLAB running.
LOG command now saves error, warning, or debug information to a file
Bug fixes: Epochstats format file could not eliminate heading. Fixed.
Segstats failed when there were exactly 2 trials with no spikes. Fixed.
Internally, MAKDAT now forces all trials to start at time 0.1 ms. This only affects files converted with plx2ctx and only affects History scripting.
SegmentsStats and MWU Keep crash on empty spiketrials. Fixed.
Version 0.47 beta 6 Released: 18 February 2004 [released later as beta 7]
MAKDAT now reports each output file name during normal processing.
Windows XP option (option 3) in Matoff.m was broken. Fixed.
OUTPUT option in MAKDAT list files was broken. Fixed.
AXIS MULTIPLOT did not accept values above 12. Fixed.
Plot #36 (of 48) was positioned wrong and affected some other subplots. Fixed.
Up to 72 plots/page are allowed!
READ RELEVANT lists all event codes for a unit in a compact format. Can also be saved to disk.
All forms of the READ command can now either overwrite to disk or append to disk.
SET/KEEP EVENTS had been omitted from V 0.46. Now they are back.
"test vectors" have been removed. They were a part of the very early debugging code.
Fixed some errors in DUMP SPIKES SET SORT KEEP was loosing trials with no spikes under some conditions.
SET EPOCH SHOW/KEEP had center-mark time reversed with spike count. Fixed.
Version 0.46 Released: 16 January 2004
Histograms were broken in V 0.45. Fixed.
Using multiple layouts never worked right. Might be ok now.
You can now save and restore the main menu positions. menuposition save <file name> menuposition load <file name>
You can now plot twice on the same axes. For example, you can plot two histogram curves or two sets of rasters. The new command is: overplot
Remember, if you don't like a command name, you can make a simple Metafile to change it.
Version 0.45 Released: 5 January 2004
Added Format keyword option to sort.fmt
Added Close Append to smoothly close a Set <process> Keep file after appending.
New environmental variables to control Dump Spikes: DUMPTEXT (string) This string prepends every line of the Dump spikes output file DUMPMODE When set to "APPEND" the Dump spikes command appends to the output file.
Version 0.45 beta 3 Released: 29 September 2003
Fixed index command to tolerate more than 2 analog channels.
Updated some help commands.
DUMP EVENTS added.Makes list of event codes that matched the sequence for each trial.
DUMP SPIKES fixed
SET/KEEP EVENTS added.
Fixed several small errors in ASCII dump formats
Updated html documentation. Better description of protocol files and batch files.
Version 0.45 beta 2 Released: 13 May 2003
Two new environmental variables: MAXINPUTTRIALS replaces TRIALLIMIT. Limits the number of trials that Makdat will read. Used for debugging. MAXTRIALSFOUND limits the number of trials that a sequence will match = number of trials plotted. Default value is 250. Larger values create larger arrays for rasters, statistics, etc., and can tax your system resources.
PARAM TAGS (tag event codes) greatly expanded. This adds event codes to a file during the MAKDAT operation.
Version 0.45 beta 1 Released: 12 December 2002
Fixed initial positioning of layout menu
Increased maximum number of plots per page to 48
Version 0.44 Released: 18 November 2002
Text lines can be positioned relative to plot frame (subplot) or relative to entire page. See TEXT FRAME command.
Histogram can be plotted as raw counts (rather than scaled to bin-size and trials). See HISTOGRAM RAW command.
Histogram supports "reference lines" +/- n standard deviations from a mean set by Segment A. See HISTOGRAM REFERENCE command.
MatOFF will now list how many of each possible sequence matched the search criteria. See FOUND command.
Fixed a bug so now MatOFF properly supports all 9 text lines.
Removed some unused environmental variables.
Makdat now uses DATAPATH for Cortex (input), MatOFF (output), and List files.
Some of Makdat's output was not respecting the MAKDUMP environmental variable. Fixed.
Numerous documentation refinements
Analog was broken. Seems to be fixed now.
Version 0.43 4 Released: September 2002
Was too lax in accepting existing environment variables at startup.
Fixed. Added THIN parameter to Makdat Command
Makdat is more forgiving if no default channel is specified
Documentation for the OUTPUT command in the Makdat list file has been corrected
Sequence, Globalignore, and some other menu entries no longer cause warning message in Matlab V6
Index command now reports which analog channels are in the dataset
Fixed bug in Read command, was looking at wrong analog channel.
Read command now supports "which" option
Added DATE command
Special protocol files variables: %10 = date string, %11 = time string
Version 0.42 13 Released: February 2002
Added option in matoff.m to accomodate different versions of Windows
Fixed bug in HIDE PLOT, SHOW PLOT (caused Matoff start-up failure)
Version 0.41 11 Released: February 2002
Fixed headings in Makdat show analog display
Fixed warning about detected errors in A/D sample rate
Fixed X-Y time range control
Much better use of space when XY plot is displayed
Ave XY does not appear to work yet.
Multiple plots/page does not look good yet when using XY plot.
Makdat documentation improved
Allow color printing of plots (set print color / nocolor)
Fixed errorlevel bug (fileerror) during batch files
PCOFF batch command no longer looks for a subunit
HIDE PLOT and SHOW PLOT are now synonyms for SET PLOT NOSHOW/SHOW
Note: default editor path will not work with Windows NT or XP. Set a new one.
Version 0.40 (Beta) Released: 6 July 2001
COUNT and DTIME were switched in epoch stats output. That has been fixed.
Makedat list file now tolerates a UNIT command without a CHAN number COPY LAYOUT command now implemented
New command: axis on/off or show/noshow turns on or off X axis on the plot
Text layout menu cleaned up
Load command now disables autoupdate
Version 0.39 (Beta) 23 April 2001
Fixed "edit event code file" and "edit spike remap file" buttons in the Makdat Menu.
Fixed typo in parse_command.m.
Fixed read analog command. (Still only reads X channel at the moment).
Fixed failure of set epoch keep to use epoch.fmt file.
Updated documentation for epoch.fmt.
Version 0.38 (Beta) Released: 17 April 2001
Fixed errors in ascii dump format files
Updated dump format documentation
Version 0.37 (Beta) Released: 12 January 2001
Introduced plx2ctx converts
Plexon files to Cortex file format
Fixed a number of problems with menus
Version 0.36 (Beta) Released: 11 October 2000
Fixed crash when exactly one trial is found.
Print command and menu now support different paper sizes
"Histogram scale auto" is now equivalent to "scale auto"
Text string Y position now measured from top of page.
Improved documentation for layout commands.
Fixed "help errorlevel".
Version 0.35 (Beta) Released: 5 October 2000
Koflay_default.dat file no longer used
Fixed bug that caused Matlab errors if mark value was too large
More sane startup values
Fixed a bunch of broken links in the documentation
Removed some unused files from the installation tree
Cleaned up links in html help files
Version 0.34 (Beta) Released: 2 October 2000
Documentation updates
Makdat and Env Editor windows can now be deleted by user without bad consequences.
Text strings added to layout and commands
Automatically repairs broken Koflay.dat file
Version 0.33 (Beta) Released: 26 September 2000
Added Sort Peak, Sort Pit, Sort Min, Sort Max
Bug fix for sorting non-contiguous trial lists
Version 0.32 (Beta) Released: 15 September 2000
Fixed Set segstats keep/show bug associated with absolute units
Added Set mwu keep/show command
Improved documentation on the Set <process> keep/show commands
Changed the format of the date and time in keep/show outputs
Fixed bug in Set sort that ignored the Trials list
Version 0.31 (Beta) Released: 7 September 2000
Fixed serious bug in Makdat associated with the TRIM command
Fixed bug that caused plotting to crash if there was a warning message.
Fixed the response to an illegal SPAN command
Added Span All documentation
Version 0.30 (Beta) Released: 17 August 2000
Fixed two bugs in Makdat introduced by changes to fid structures
New: Makdat menu
New: Environment menu
New: Edit command
Added environmental variable: editor
Added environmental variable: eogsamplerate
Expanded documentation on scripting
Expanded documentation on Append, Close, Open, rWite
Synchronized Units/pcoff-absolute GUI with environment.displayunits
Version 0.27 (Beta) Released: 14 August 2000
Implemented Open, Append, and Write commands
The Close command now takes parameters
Internal changes to fid and fn structures
Any line beginning with ";" is now a comment line
Example html generation with metafiles
Fixed plot file numbering bug
Added Print and Plot to help files
Version 0.26 (Beta) Released: 9 August 2000
Fixed a Makdat bug that choked when a data file name had both upper and lower case characters.
Save command was not saving the SEGMENT show/noshow property properly.
Plot command has been rewritten to support different graphic file types
Set plot has been modified
New environmental variable GRAPHICSFORMAT has been added
Some unused commands were removed Documentation was improved in several places, especially the
Set and Plot commands
Version 0.25 (Beta) Released: 3 August 2000
Makdat list file CHANNEL option now accepts a list of channels
A bug in the sequence scanning operation was fixed
A bug in recognizing file paths was fixed
BELL command is more flexible
Version 0.24 (Beta) Released: 13 July 2000
SHOW SPIKECOUNTS now handles larger files
More error trapping for bad Mark and Sourcetrials values