DMDX Help.


File Format notes.

   

   When I originally created the output files that DMDX generated I considered their formats fairly obvious, having had to explain them a number of times recently this note rectifies such oversight.

DTP
   
The .DTP file format is totally deprecated, don't think anyone uses it any more and for good reason.  It's a binary file of 256 or 512 16-bit words, one per item (limits you to item numbers less than 513 and RTs less than 32 seconds).  As with all DMDX formats words are negative if the response was incorrect.

AZK
    The .AZK file format is the default that DMDX uses.  Output is typically one item per line with the item number and the RT (which will be negative if incorrect).
Subjects incorporated to date: 001
Data file started on machine 666-DEVEL

**********************************************************************
Subject 1, 04/20/2010 13:29:10 on 666-DEVEL, refresh 16.67ms
  Item       RT
     10  -4000.00
     20    712.86
     30   -809.09
     40    896.93
     50    679.68 
    Here five items numbered ten through fifty were responded to, the first one being a timed out out item where the subject didn't respond within the 4000 millisecond timeout and the third being an incorrect response.  Multiple subjects will have their data appended to that:
Subjects incorporated to date: 002
Data file started on machine 666-DEVEL

**********************************************************************
Subject 1, 04/20/2010 13:29:10 on 666-DEVEL, refresh 16.67ms
  Item       RT
     10  -4000.00
     20    712.86
     30   -809.09
     40    896.93
     50    679.68

**********************************************************************
Subject 2, 04/21/2010 11:50:53 on 666-DEVEL, refresh 16.67ms
  Item       RT
     10    896.93
     20    679.68 *** ABORTED *** 
     30   1787.99
     40    649.58
     50    553.33  
    Here the second subject's second item was aborted.  Other information can be interjected within those lines where the first character of the line is an exclamation mark:
Subjects incorporated to date: 001
Data file started on machine 666-DEVEL

**********************************************************************
Subject 1, 04/20/2010 13:29:10 on 666-DEVEL, refresh 16.67ms
  Item       RT
     10  -4000.00
     20    712.86
!  Display error at msec 12649.61, tick 758 in item 20, frame "TEST"
!    moved into video memory 2 ticks late
!     (previous frame's duration will have been longer)
     30   -809.09
     40    896.93
     50    679.68 
    Here a display error has occurred.  And additional columns of data can be present, for example the <RecordClockOnTime> keyword has been used below:
Subjects incorporated to date: 001
Data file started on machine 666-DEVEL

**********************************************************************
Subject 1, 04/06/2004 11:06:26 on 666-DEVEL, refresh 11.78ms
  Item       RT       COT
   250   -500.00      0.00
   250   -500.00   1435.41
   250   -500.00   2870.81
   250   -500.00   4306.22
    Later versions of DMDX will have additional data in the subject line, DMDX's version number and an indication of the Windows version running:
Subject 1, 08/06/2017 15:46:12 on WIN10LAPTOP, DMDX 5.1.5.2, Windows 6.2.9200, refresh 16.95ms 
    All versions of DMDX can have a subject ID if it's been provided at the end of the subject line:
Subject 2, 08/24/2017 15:44:56 on WIN10LAPTOP, DMDX 5.1.5.2, Windows 6.2.9200, refresh 16.95ms, ID abc


ZIL
    The .ZIL file format is used when an experiment no longer falls into DMDX's standard binary response paradigm.  Here all keystroke information is listed after the normal output in pairs of time and keystroke:
Subjects incorporated to date: 001
Data file started on machine 666-DEVEL

**********************************************************************
Subject 1, 04/30/2010 13:19:32 on 666-DEVEL, refresh 16.67ms
Item 1
 1169.32,+1 1302.79,-1 1859.05,+2 1981.58,-2 2462.57,+3 2590.59,-3 3087.72,+4 3207.52,-4
Item 2
 808.51,+2 933.77,-2 1062.55,+2 1206.96,-2 1448.67,+1 1584.89,-1 1778.20,+3 1966.26,-3
    Here in item 1 keys 1, 2, 3 and 4 were pressed and we see the times the keys were pressed (the 1 key 1169.32 ms after the clock on) and times they were released (the 1 key being released 1302.79 ms after the clock on).  Item 2 had the sequence 2213 pressed.  One can remove the key release information by validating just the key presses for instance:
**********************************************************************
Subject 4, 04/30/2010 13:30:39 on 666-DEVEL, refresh 16.67ms
Item 1
 2326.75,+1 2739.34,+2 3151.76,+3
Item 2
 1067.81,+3 1528.83,+2 2002.86,+1
    If one uses the <ZillionOneResponse> mode then RTs will be appended on the item number line:
Subjects incorporated to date: 001
Data file started on machine 666-DEVEL

**********************************************************************
Subject 1, 03/21/2003 14:59:10 on 666-DEVEL, refresh 11.78ms
Item 9991, 1706.12
 1706.12,+2
Item 9992, 900.77
 900.77,+3
    Here's a <zor> script using DMDX's auto mode so there are extra comments containing diagnostics, a startup display error just for good measure (actually a very common thing to see on the first item in a file), a warning relevant to auto or EZ modes and it uses <AbortDQPurge> so every item is aborted.  Here you can see the appended RT coming after the aborted message:
Subjects incorporated to date: 001
Data file started on machine 666-DEVEL

**********************************************************************
Subject 1, 06/11/2010 10:28:28 on 666-DEVEL, refresh 10.00ms
!  DMDX is running in auto mode (automatically determined raster synch)
!  Video Mode 1024,768,32,100
!  Item File <D:\dx3\test\test abortDQPurge fix.rtf>
!  Display error at msec 561.04, tick 48 in item 500, frame "vertical fixation2"
!    was blocked by Flip() not returning for 96.28ms
!     (previous frame's duration will have been longer)
!    -- possibly caused by another process taking 2 ticks
!  WARNING: Explicit frame duration (% or <%>) used in EZ or auto mode, use <%ms> instead
Item 500 *** ABORTED ***, 253.18
 253.18,+Right Shift
Item 500 *** ABORTED ***, -227.94
 227.94,+Right Shift
Item 221201 *** ABORTED ***, -101.59
 101.59,+Right Shift
Item 122102 *** ABORTED ***, -194.60
 194.60,+Right Shift
    If one uses the <ZillionOneLine> keyword with the earlier example then all output for each item is put on one line (the zilliononeline utility will do this post hoc if you forget to include <zol>...):
**********************************************************************
Subject 5, 04/30/2010 13:48:11 on 666-DEVEL, refresh 16.67ms
Item 1 1191.46,+2 1350.61,+2 1613.11,+3 1762.12,+1
Item 2 463.16,+3 631.01,+2 842.50,+1
Item 3 535.58,+1 636.32,+2 770.90,+3
    Here's the earlier <zor> script using <zol> (without a display error this time) where you can see the effect of <zol> is to have the RT printed twice in a row however the first time it's printed it's negative or positive based on it's correctness, the second time is it's absolute value (which under some rare circumstances involving <ContinueClockOn> below could in fact be negative -- but that's that a exceedingly rare usage) :
**********************************************************************
Subject 2, 06/11/2010 10:28:28 on 666-DEVEL, refresh 10.00ms
!  DMDX is running in auto mode (automatically determined raster synch)
!  Video Mode 1024,768,32,100
!  Item File <D:\dx3\test\test abortDQPurge fix.rtf>
!  WARNING: Explicit frame duration (% or <%>) used in EZ or auto mode, use <%ms> instead
Item 500 *** ABORTED ***, 275.55 275.55,+Right Shift
Item 500 *** ABORTED ***, -314.28 314.28,+Right Shift
Item 211203 *** ABORTED ***, -125.83 125.83,+Right Shift
Item 212213 *** ABORTED ***, 250.68 250.68,+Right Shift
    If you use the <ZillionTypedResponses> then the resultant text (that which would be displayed) is added in brackets after the item number (<zol> is used here too):
Subjects incorporated to date: 001
Data file started on machine 666-DEVEL

**********************************************************************
Subject 1, 09/11/2007 10:45:32 on 666-DEVEL, refresh 16.67ms
Item 1, (REAL) 968.53,+R 990.13,+E 1122.47,+A 1922.44,+L 2164.61,+Enter
    Similarly if one uses <rcot> then it's data will be added in there as well:
**********************************************************************
Subject 4, 10/18/2006 14:32:47 on 666-DEVEL, refresh 16.58ms       COT
Item 1, COT 0.00, No Responses.
Item 2, COT 994.83
 -1751.87,+Space -1639.71,-Space 182.03,+Left Shift 295.29,-Left Shift 766.40,+Left Shift 882.42,-Left Shift
    An astute observer would note the negative RTs provided in the keystroke data there, this is because that test was done with <ContinueClockOn> in the second item and I was testing whether zillion responses survived the changes made for it and the negative times (correctly) indicate those keystrokes occurred before item 2 was actually being displayed.  They would also have noticed that the COT heading for AZK files has been appended to to the subject line (if a subject ID had been used it would become part of it, oops).  This was fixed in version 5.1.5.3.  Corrected current output would look something like this:
**********************************************************************
Subject 4, 10/18/2006 14:32:47 on 666-DEVEL, DMDX 5.1.5.3, Windows 6.2.9200, refresh 16.58ms
Item 1, COT 0.00, No Responses.
Item 2, COT 994.83
 -1751.87,+Space -1639.71,-Space 182.03,+Left Shift 295.29,-Left Shift 766.40,+Left Shift 882.42,-Left Shift




DMDX Index.