------------------------------------------------------------------------------
  DAD "readme" file                 DAD.txt                        Jun.25.2009
------------------------------------------------------------------------------
  This is information regarding the latest release of the ENCO Systems DAD software.
  Note: These notes are intentionally vague.  They are simply a list of changes made to DAD.
  Specific, detailed information on any of these items should be acquired from ENCO Tech Support at +1 (248) 827-4440 (Tech Support can not be reached via the 800 line).

  See "SPECIAL NOTES" at the end of this file for important messages from ENCO

-----------------------------------------------------------------------------
                       DAD 9.1b (Jul.??.2009)
-----------------------------------------------------------------------------
  DAD now handles nested ROTATE cuts that contain nothing but expired cuts
  
  DAD once again prevents editing a cut in the Library while it's already playing (in the Library)

  DCOM interface to Quad Decks now supports LibLoc/LibName 
  DCOM interface to Quad Decks now supports Stop with Fade
  
  CutServer changed to show cutid info for external (998) events
  
  Right Channel Slate mark labels are now properly displayed in the Editor
  
  AirPlay STOP WARNING no longer blinks after AUDITIONING 
  
  Switching AirPlay from Manual to Auto mode will now properly trigger the Next cut based on Segue Head (was using Tail)
  
  Corrected an item in Airplay that could result in a cut being stopped prematurely when 'taking' the next cut in Auto mode or starting inadvertently when using Live Assist mode
  
  Added more Verbose Debug information for the EDITOR to help track elusive issues
  
  More Presenter items in preparation for launch
  
-----------------------------------------------------------------------------
                       DAD 9.1a.141 (May.21.2009)
-----------------------------------------------------------------------------
  Added -Minimize or /Minimize command line option to start DAD minimized
  
  Changed playlist icon processing methods to better handle older machines (minimizing consumption of GDI's)
  
  CFI change:
    [Defaults] CUT_LOCATION = HOTSHOT
    Just like Cut_Location = USERDEF except that the three fields (Actor+Actress+Lyricist) are used to identify audio file location 

  More Presenter items in preparation for launch

-----------------------------------------------------------------------------
                       DAD 9.0a.124 (May.04.2009)
-----------------------------------------------------------------------------
  Initial implementation of Presenter
  
  Changed CUT_LOCATION = LIBLOC | GROUPLOC | ALTCUT to:
    CUT_LOCATION = LIBLOC | GROUPLOC | ALTCUT | USERDEF
      When LIBLOC (the default), DAD plays cuts as always using Cut number, Location and EXT.  There is no looking for alternate locations.
      When GROUPLOC, DAD plays cuts as always using Cut number, Location and EXT.  If the cut is not found, DAD looks for cut/ext in the LOC1, LOC2, LOC3 fields of the group that cut is in.
      When ALTCUT, DAD plays cuts using full path and filename specified in the AltCut field. If the cut is not found, DAD looks for the file specified in the ALTCUT field but, in the LOC1, LOC2, LOC3 fields of the group that cut is in.  No attempt is ever made to play cuts as normal (like LIBLOC).
      When USERDEF, DAD first tries to play cuts as normal (like LIBLOC) using Cut number, Location and EXT.  If that attempt fails - then DAD plays the cut using the full path and filename specified in the USERDEF field. 

  PBKState.ini (or the INI specified by CFI [Playback] State_INI_File - now supports a mutually exclusive setting for the [Groups] section
     Exclude Groups = True | False
     Default is False, Playback State includes cuts within the groups specified in [Groups]
     When set to True, Playback State excludes cuts within the groups specified in [Groups]

  Added support for multiple Broadcast Tools SRC16 GPI's devices (daisy-chained).
     Two SRC16 units should use this CFI setting:
        GPO_GPO = 32 32 64
        REMOTE=BTSRC16 comport

  DAD once again properly advances back to the top of a Playlist after trying to CHAIN to a non-existent Playlist.
    
  DAD once again properly uses %datadir%\dad\files\DADparse.ini to fill data fields on audio files drag-n-dropped into the Library

  Corrected a problem with the MasterLog Countdown clock and timers when Auditioning at the same time.

  DAD's main title bar now prefaces the Server environment variable with the word "Server:". 
    Ex title bar:   DAD v9.0a by ENCO User:GeneR Library [L:][CUTS] Server:GeneSpace
    
  Upon startup DAD will now return to the Library Group used in the last DAD sesson - only if the User Default Group (Setup->UserDefaults->DefaultGroup) is set to ALL.
    Any other Saved User Default Group will cause DAD to startup using that Group.
    
  Tracker will no longer stop the Intro (bottom) cut early when a user:
    Starts playing the Outro (top)
    Engages Rec then Rec-Play,
    Starts the Intro cut...
  
  Added support for ASI cards using a DAD Mixer file under Vista
  
  Changed how certain chunks are written into WAV header audio files to allow them to more easily be imported/used by 3rd party systems
    
  Array Page Titles now follow the CFI setting [System] User_Setup_Auto_Save
    When TRUE - page title changes are auto saved in teh user setup
    
  Setup=>ChannelAssignment machines are now in alphabetical order
    
  Next Available setting for REC Machines using a Cut Range now correctly presents unused cut numbers
  
  When using the timed option on the ALERT DCL, the Alert popup displays a countdown timer showing mm:ss till the Alert expires
  
  When Editing a cut from within a Playlist, DAD will now recognize the MLIB (mult-library) attributes of that cut and now properly open it with Editor
  
  ALL fields processed into an XML file by Playback State now handle XML special characters (& ' " < >)
  
  Voice Tracks created in Tracker that are over 1 minute now properly display their lengths correctly in Playback Machines
  
  Chain events in a playlist that point to non-existant playlists once again display in RED to warn the user of an impending problem
  
  Playback machines no longer halt automation with a NO ACCESS error message when the current user has no access to a cut scheduled to play.   The event is skipped and automation continues.
  
  The Title Bar on Playback Machines no longer disappears during a transition
  
  When DAD uses WDM and DirectX (like with Axia), and is playing a PlayWhileRecord cut, while it's still recording, DAD will now properly stop the playback at the time the Recording actually stopped.   Used to play till DAD reached the Play_While_Record_Max time. 
  
  The MACHINE STATUS QUADx dcl now returns info on the playing cut when that QUAD deck is playing a Rotate Cut
  
  AudioCVT now supports a full pathname for a CutServer Notification folder - used to support only a drive letter. 
  
  Changed CutServer to properly update data when a RecStart is issued.  Was resulting in stuck "RECORDNG" entries in Record Date field - causing these cuts not to be able to play
  
-----------------------------------------------------------------------------
                       DAD 8.1e.339 (Dec.04.2008)
-----------------------------------------------------------------------------
  New CFI Setting:
    [Library]
    Quick_Search_Mode = ALL or GROUP
      Default is ALL.  Which tells DAD to do searches within ALL groups
      When set to GROUP - searches will be done within the currently selected Group
      The "USE ALL GROUPS" checkbox in the Full Search dialog performs this same control.
      Regenerating the Quick Search index is highly recommended for proper Quick Searches.

    [System]
    UDP_RESPONSE_METHOD = 0 or 1
      Defaults to 0 - the original method for UDP responses returned on port 2002
      When set to 1 - responses are sent to the calling port (not recommended)
  
    [AirPlay]
    DCL_Keybd_Shortcut = true or false
      Defaults to false - Function Keys F1 thru F4 fire P_PLAY buttons as normal
      When set to true, Function Keys F1 thru F4 will fire AirPlay DCL buttons instead of P_PLAY buttons
  
  DAD SQL changes:
    1) CFI setting [Options] SQL - is no longer used. 
    2) to start DAD in SQL mode use the -SQL=sqlini  command line option
       ex:  DAD -SQL=F:\DAD\files\sql.ini -LF:
    3) DAD will no longer create SQL tables.  There's a new SQL utility that should be used prior to using DAD in SQL mode. 
       c:\dad\progs\SQLutils.exe is the utility that converts CodeBase (.dbf) databases into SQL tables (and SQL to CodeBase)
    4) Verbose debug mode        
    5) More efficient startup
    6) More efficient use of SQL tables to make large Libraries perform better
    7) Searching support improved dramatically
       non-SQL search is completely free-format
       SQL Search mode uses syntax like:    Title like 'love%'
    8) DAD SQL is no longer "SYSTEM DSN" based.  No DSN's are used for SQL table access.   The entries in the startup INI file will determine ADO access.  Example sql startup ini:
      [SQL INFO]
      ENGINE = SQLSERVER
      PROVIDER=sqloledb
      SERVER=GENESPACE
      DATABASE=DADsql
      USERNAME=somename
      PASSWORD=somepass
    9) There is a temporary limitation in DAD SQL preventing the generation of NEXT CUT #'s. 

  Full Screen Playlist Modify now supports LiveList server
  
  RecList now supports the "C" column controller that all the other lists within DAD support.   You can now completely control the RecList columns as you wish.   

  The field labeled "Source:" in the RecList Parameters dialog is now labeled "Source/Switcher:" to better line up with the RecList Column Heading: "Switcher". 

  User can now shrink AirPlay (when it has a Mini-Array attached) to unreasonably small sizes and then expand it back without DAD dying.
  
  When playing a Chain Event in an AirPlay slot in Manual Mode - DAD now properly displays the chained-to playlist

  Drag-n-Dropping a cut from AirPlays Library into a slot above a playing slot is no longer permitted

  Max Log Count setting in AirPlay is now saved as part of the User Setup
  
  RightClick in AirPlay Library tab no longer causes a Please Wait popup which often prevented the RightClick menu from being usable.

  Soft Branches in AirPlay now properly execute even after switching modes of a playing from Manual to Auto.  Was previously executing as a Hard Branch.

  Support for DADstations.ini (Shift-F7) completely removed

  Auto Rec switch states for Rec1 and Rec2 are now properly saved to the User Setup file
  
  Changed how DAD updates timer info within buttons that may have caused some instability issues
  
  Turned off some internal StreamLine threads that were not needed and possibly interfering with normal operations.
  
  Corrected a potential stability problem when dragging cuts from the Mini-Playlist-Modifier to a Mini-Array panel. 
    
  The OutCue tag information within an XML file created by Playback State is no longer limited to 24 characters.
  
  When DAD processes a Segue Type 1 only (no segue based fading), if there is a FadeOut point set - DAD will use it.  FadeOut point can be before or after the Segue Head point.  DAD will FadeOut to the SegueEnd or Tail point - whichever occurs first.
  
  Group Names longer than 5 characters are now properly processed by Asplay2.rpg filtering
  
  Corrected a problem with PAUSING a Playback machine - was only able to Pause once.
  
  Type-Ahead in the Library when sorted by Title now supports "spaced" in the type ahead string
  
  XML responses to XML UDP requests no longer include the  tag within the response.   Only the  and the  tags are sent from DAD.          
        
  New technique used for Pacer Bar within Buttons (like Playlist Bar on a Playback Machine).  Now smoother and less CPU intensive.      
                
  Video DAD now supports .WMV multimedia files
    
  CutServer now properly propogates "external" cut deletion messages (i.e. deletions done by AutoPurge, etc.)
  
  CutServer clients no longer get a blank and 00000 record in the Library after using USER INPUT Next Record on Recorders.
    
  CutServer properly processes Multi-Libary based delete/purges (now deletes only the LOC based audio file)  
    
  Enhanced DADSend32 utility (c:\dad\progs\DADsend32.exe) to show more response data and allow for both XML and non-XML wrapped messages.   DADsend.exe is now the same program as DADsend32.exe
    
-----------------------------------------------------------------------------
                       DAD 8.1d.253 (Sep.09.2008)
-----------------------------------------------------------------------------
  New CFI Setting:
    [Array]
    Label = dadfield
    LabelLen = length
    Ex:   LABEL = ALTCUT
          LABELLEN = 8      (uses the ALTCUT fields truncated to 8 characters to label Array and DADPAD buttons)

  F10 status display in verbose mode now shows CutServer update messages and results of local Library_Display usage
  F10 status display in verbose mode now shows details about STOP RECx process
  
  Changed how DAD handles lots of cut delete markings in the Library when running as a CutSever client.  Delete marks could previously get removed on their own requiring repeated delete/purge steps
  
  RE-PLIST utility changed to properly create a new plist.dbf if one doesn't exist
  
  When zooming out to 640sec scale in the Editor on an MPEG cut - the Yellow Focus Box no longer disappears.

  Send Text Rules and Rules2 now properly support IO ports greater than "D"  (E thru Z). 
    Example CFI settings:   
       Rules = H Rules.txt
       Rules2 = M Rules2.txt
       
  Playback State now completely obeys the PBKstate.ini filtering rules for cut playing now.  DAD was generating "time remaining" information with no cut information.  Now there will be no XML created at all. 
  
  If the last event in a short Playlist loaded into AirPlay is a NOT FOUND - and that last event is scrolled into the display area of the Playlist, DAD used to choke.   Corrected.
  
  Change/Return button in AirPlay corrected to properly hilite (change color) to indicate a change in the play order of a playlist after dragging a cut from the Library Tab into the playlist
  
  AirPlay Load Slot button now loads the right cut after Pressing Change/Return.  Was loading the last cut hilited.
  
  Cuts dragged from AirPlay slot to AirPlay slot that are not in the currently loaded Library now properly maintain their source LibLoc (library location) - was improperly being changed to the LibLoc of the loaded Library. 
  
  Clock display/button on the Top Row has been resized to match the other 5 top buttons.  Resizing the DAD desktop will now have the top buttons matching the bottom P_Play buttons.
  
  Enhanced Playback State (PBS) XML output to support Length tag output formatting. 
    \dad\files\PBKState.ini now supports this:
      [Fields]
      Length=                 (ex:  412.3)
      Length=mm:ss            (ex:  06:52)
      Length=mm:ss.d          (ex:  06:52.3)
      Length=hh:mm:ss         (ex:  00:06:52)
      Length=hh:mm:ss.d       (ex:  00:06:52.3)
  
  Changed Library->Search->Phonetica to handle both Nexidia and Compure engines. 

  Shift-F7 - which shows currently running DAD workstations on a shared network is now off by default.  Default is now [General] Monitor Logins = FALSE
  To enable this feature - change to TRUE in the %datadir%\dad\files\DADstations.ini file
  
  Command Cut Editor now has the Cut Number and Cut Title displayed in the Title Bar. 
  
  Corrected a problem in 4-Play that would prevent hilited cuts from being loadable. 
  
  When dragging a cut into the Library - any data fields ingested (like from Cart Chunk, etc.) are no longer "upper-cased"
  
  When DAD "next" or "superplays" into a Delay Event, the Playback machine will no longer come into focus (on top of other machines)
  
  More "caption" text work done for the main desktop buttons (for WindowsEyes)
  
  Corrected a problem with Soft Branches not playing correctly if the currently playing cut has an autoLoad transition. 
  
  The CFI setting CRITICAL_FILES_REMAIN_OPEN = FALSE no longer has an impact on the OPEN/CLOSE LOG ASPLAY DCL.   
  
  When recording a VO in Track thats over 2 minutes long and the OUTRO cut is short (like 30 seconds), you can now use the Viewing Length buttons to see the entire VO. 
  
  DAD can now handle swapping AirPlay slot cuts when the cuts have commas in the Artist or Title fields.
  
  CD Ripper settings now properly being saved after making changes.
  
  If a large enough group of cuts are hilited in the Library (to delete/undelete for example) when DAD is running as a CutServer client, a workstation timeout could occur.   This has been corrected.
  
  When two DAD CutServer clients ask for a new cut# (via Next Record), they will now get unique numbers.  If the timing was just right - both could have gotten the same number. 
  
  When DAD starts up as a CutServer client - the copying of the network database is now only done once.  Will help to minimize startup time on a low bandwidth connection.
  
  When DAD starts up as a CutServer client - the LOCAL_DISPLAY CFI setting is forced to FALSE (regardless of the CFI setting)
  
  CutServer changed to log "external" message files from Gateway/DropBox/CoolDAD better
  CutServer RE-INIT function changed to properly reflect the status of SCANNING
  CutServer changed to better handle lots of cut deletes (> 10)

  Internal notes:
    Corrected DAD to possibly prevent an unexpected exit - with special logging of this condition if it occurs.  Was related to a possible buffer overflow. 

-----------------------------------------------------------------------------
                       DAD 8.1c.212 (Jul.30.2008)
-----------------------------------------------------------------------------
  Corrected reconnect problem introduced in 8.1b for CutServer Clients when CutServer Server isn't running.

  Corrected a Purge reporting problem with CutServer when there were lots of deletes to Purge
  
-----------------------------------------------------------------------------
                       DAD 8.1b.211 (Jul.29.2008)
-----------------------------------------------------------------------------
  New/Changed DCLs:
  1) SET PAGE  
     Example: SET PAGE MINAR1 4    (sets Mini-Array to Page 4)

  2) Modify Cut Range 
     No longer refreshes the Library with a PLEASE WAIT after each cut processed.   Waits the the range is completed and does one refresh.
     
  3) REFRESH 
     Refreshes the specified array buttons from the User Setup (in case they're changed elsewhere)
     Example: REFRESH ARRAY
              REFRESH MINAR1
              REFRESH MINAR2

  New/Changed CFI settings:
    [System]
    Background_bitmap = "c:\dad\files\bitmaps\your.bmp"
      Default if not specified is an ENCO DAD logo
      Changes the default bitmap used for the DAD desktop 
      To disable the bitmap:   Background_Bitmap = OFF
      Area provided in the desktop is 200x200.   Other size bitmaps will be stretched/shrinked to fit.

    [Tracker]
    Record_VO_Location_Outro = TRUE | FALSE
    Default is TRUE - Voice Tracks get stored in the same location as the Outro
    When set to FALSE - Voice Tracks get stored in the location the Tracker Recorder (REC5) is set to

    [Defaults]
    REWRITE_AUDIO_ACTIVATES_AGENT = TRUE | FALSE
    Default is TRUE - Rewrite Audio will trigger the startup of the iNews Agent (for CNN)
    When FALSE - no special actions
    
    [Library]
    RIGHT_CLICK_SEND_TO_AGENT = TRUE | FALSE
    Default is FALSE - no special actions
    When TRUE - Allows startup of the iNews Agent (for CNN)

  Added a REFRESH icon to Array/Minar1/Minar2 Title bars to refresh just that array using currently loaded User Setup (useful when the user setup is being updated elsewhere)

  Added Auto Edit mode to Record Machines setup.
    When enabled - pressing Stop to finish a recording will open the Editor using the cut just recorded. 
  
  When drag-n-dropping a cut into the Library and overwriting an existing cut, there are now two overwrite choices: 
    ReplaceData/ReplaceAudio  -   uses DADparse.ini data or CartChunk data from the source cut to replace data (title, etc.)
    LeaveDate/ReplaceAudio - leave data (title, etc.) alone
  
  AutoEdit and AutoUnload for Recordings disabled if the Recorder has Normalizing enabled
  
  AutoRecord in Record Machines disabled if the Recorder is in User Input mode

  Library->Add/Modify window now supports Japanese Characters using Windows XP

  The DAD Desktop now uses c:\dad\files\bitmaps\DADBACK.bmp in a centered area.  Users can change this bmp to anything they wish (station logo's, etc.)

  Group Range Lowest setting in REC Machine is now based on the Currently Selected Group - used to use Setup->MiscDefaults->DefaultGroup
  
  When copying/moving cuts from one library to another (Multi-Lib), all the Target cut files are now deleted first (*.wav, *.txt, *.slt, *.edl, etc.)
  
  Corrected a problem with RightClick->EditScript in AirPlay
  
  Added TIME TO PLAY info for Array and P_Play buttons to the debug file (F10)
  
  Added CutServer Client vs Library mode changes to the debug file (F10)
  
  Tracker now handles Voice Overs that are initialized but not actually recorded (empty VO's)
  
  Tracker now properly plays Production Element based Voice Tracks that have a non-0:00 Head
  
  Initial loading and positioning of playlist at DAD startup (based on .RES file) corrected to allow for new Incremental Loading technique
  
  Playlist cuts at the end of a normal playlist now play correctly - were getting skipped
  
  Dragging a cut into the DAD Library now properly reads the LENGTH from the WAV header when filling the Length field

  Whe ARRAY is set to GrayoutAfterPlay, the text color on a grayed out button is changed to black regardless of what the original text color was. 
  
  AudioCVT now supports these command line options
    AudioCVT outro.wav/E15.0/L15.0 outro.mp3  (to get 15 seconds of the end of the outro.wav audio file into outro.mp3)
    AudioCVT intro.wav/S0.0/L15.0 intro.mp3   (to get 15 seconds of the beginning of the intro.wav audio file into intro.mp3)
  
  DAD and CutServer changed to use ipWorks IP Socket communications
  
  CutServer now uses c:\dad\progs\Rebuild.exe when doing Rebuilds
  CutServer now has a "RE-INIT" button to load CutServer.ini settings without having to restart CutServer
  CutServer now sends a Green ALERT message to any workstation doing a PURGE when the Purge is completed.  Purge can take some time on large databases.  Users should wait for this ALERT message before doing anything else in the Library.
  CutServer now properly notifies clients about removing cuts that ended up NOT being used by CoolDAD (after user presses CANCEL for example). 
  
  WatchDog updated to support the 7.4.0 Sentinel Key driver
  
  Internal notes:
    Turned on support for Video DAD (PBK)
    Added ability to play video from P_PLAY, ARRAY, QUAD, LIBRARY 
    Added Drag-n-Drop of Video Files into and out of Library
    Popup display for Video output now resizable
    Video Files now use a gray movie reel icon
    Standard transition now work for playing Video files in a PBK
    Abilty to play video using Head/Tail points

-----------------------------------------------------------------------------
                       DAD 8.1a.165 (Jun.14.2008)
-----------------------------------------------------------------------------
  Added Library->RightClick->GotoURL  - opens a browser to the address specified in the URL field

  Added "caption" info to MiniArray buttons with Cut,Title,Length for blind operations using WindowsEyes. 
    Also changed the Tab Order of MiniArray buttons for same reason.

  Added Talk Time counter display to the Playback "pop-up"

  Added Auto Rec mode to Record Machines setup. 
    When enabled - pressing Next Recording will select a cut number, accept it, start REC and PLAY buttons to start recording as fast as possible. 
    
  Added Auto Unload mode to Record Machines setup.
    When enabled - pressing Stop to finish a recording will UNLOAD the cut making it harder to overwrite the cut just recorded. 

  Added support for the Digigram PCX HR-442 and 822HR audio cards in Digital Mode
  
  New/changed CFI options:
	[Library]
	Double_Click = MODIFY | EDIT | URL    (default is MODIFY)
	  Modify setting will cause a double click to open Library->Modify
	  Edit setting will cause a double click to open the Editor
	  URL setting will cause a browser to be opened to the address specified in the URL field

    [Playback X]
    Play_Counter_Size = Normal | Large
      default is Normal
      when set to Large - decimal seconds are removed and the Font size is increased 
      Counter displays are now BLACK 
    Swap_Counters = true | false
      default is false
      when set to true - Play Slot CountDown timer is swapped with Play Button CountUp timer
      
    [Array]
    Panel_Load_Delay = n      (n in milliseconds)
      default is 0
      when non-zero - DAD will stagger the reading of the 30 Array pages by this delay setting in between in each page.  This delay can help with slower PC's that are badly effected by Load User Setup while playing audio
      
    DRAGandDROP = 0 or 1 or 2 or DISABLED
      Default is 0 - for Default DragAndDrop Mode via RightClick on an Array Button set to Off
      1 - sets the default to MOVE
      2 - sets the default to COPY
      DISABLED - grays out the option and makes it inaccessible
    
    DRAGandDROP_WARN = true | false  (default is false)
      When false (default) DRAGandDROP works as it does now.  No message if user moves or copies onto a populated Array Button
      When true - user will get a message confirming the desire to replace the contents of a populated Array button
      
    [LIBRARY]
    Local_Display = FALSE    (default is true)
       Corrected - was preventing Quick Search from working properly
  
    [PLAYBACK]
    MINIMUM_SEGUE_LENGTH = milliseconds
    Default is 0.   Any Segue Length less than 250ms will be set to this length. 
    Allows user to control what DAD does if a Segue is too small (< 250ms). 
    Default has been 0 for (ever).  Now user can specify some other default segue length. 

    INCREMENTAL_LOAD_DELAY=500           (milliseconds)
    INCREMENTAL_LOAD_INCREMENT=300       (number of playlist events)
    INCREMENTAL_LOAD_MANUAL_LOAD=TRUE    (default is FALSE)
       Together, these three settings tell DAD to CHAIN or LOAD a Playlist - in sections  - allowing DAD to start using the playlist right away while the rest of the playlist is still loading. 
       CHAIN will use the delay/increment settings. 
       LOAD will only use the delay/increment settings if Manual_Load is TRUE
       Setting Increment to 0 will cause the entire playlist to Chain/Load at once (the old way)
    
    [SYSTEM]
    Flush_after_database_write = TRUE or FALSE
    Defaults to TRUE

    [RECORD]
    GROUP = EXISTING | SELECTED  
    Defaults to EXISTING.  When loading an existing cut into a RECORDER, the GROUP doesn't change
    When set to SELECTED - when loading an existing cut into a RECORDER, the GROUP changes to that currently selected in the Library
      
  New/changed DCL's:
     LIVELIST PBKx MASTER      
     LIVELIST PBKx APPRENTICE
     LIVELIST PBKx OBSERVER  
     LIVELIST PBKx RELEASE    
       Places the specified machine (includes AirPlay and MLOG) into the specified LiveList mode 
      
  When Editing MP2 audio files, DAD no longer has trouble deciding what kind of energy encoding is being used and is now "audio card independant" is determining which visualization technique to use
  
  Changed how DAD re-evaluates BRANCH Events after doing a playlist CHAIN. Previously, the Window of Opportunity for Branch events could have prevented a new Branch from firing if it was very close to the time at which the CHAIN occurred. 
  
  Corrected a problem with Stretch-n-Shrink (playtime adjusting) for ASI cards - was forcing Pitch Change - no longer does. 
  
  Clicking on MLOG from within ConfigPBK when MLOG is not enabled no longer causes problems.
  
  MPEG bit rates no longer show as double their real value
  
  When hiliting the Library->Search QuickSearch field - the entire field gets hilited making it easier to clear it for a new entry.
  
  Array and 4Play arrow buttons are now rectangular buttons making it easier for touch screen users to touch them.
  
  Rebuild now strips out "control" characters that could be misinterpretted as EOF, etc. 
  Rebuild now properly handles OLD BADCUTS_x_x.dbf database files that contain corrupted cuts it (rebuild) finds.  Older BADCUTS databases wouldn't have the proper new CUTS fields. 
  
  Copy to clipboard in Library when using this setting
  [LIBRARY]
  COPY_BUFFER_FORMAT=WIREREADY 
    now works correctly again
  
  Head Quick Start in automation machines now shows the TITLE in the popup window and it "remembers" the most recent position used 

  Corrected a problem with the ENDTALK column display in a Playback machine.  Was displaying the wrong field and was using 4 decimal places
  
  The UNLOAD button on a REC machine now properly hilites if there's a cut loaded. 
  
  Library->Reports->Exception reports now ignores playlist based Voice Over files
  
  Library->Modify on a Playlist Cut now allows the PLAYLIST button to open up the referenced Playlist. 
  
  Resetting the HEAD in the Editor while Playing will once again have DAD restart the playing from the new head
  
  Corrected a problem with Segueing into Chaining into a playlist 
  
  Setup->User is now Setup->SaveUser
  
  Setup->Groups->Edit->Filter field is no longer full of spaces - making it much easier to update the field
  
  Library->Purge now uses a new delete/purge index to tremendously speed up PURGE
  
  Changed the LOAD CUT RECx 'string' DCL to create a new cut using the current RECx "next cut" settings - and filling the AltCut field with "string"
  
  LiveList no longer floods LiveListServer with PacerBar messages when using AirPlay in MasterMode (was fine for PBK).  CutServer.ini should use 20ms for the EVent Processing Rate (old default of 300ms is too slow for LiveList) 
  
  AirPlay in READONLY mode now prevents dragging cuts from the playlist into the Trash Bin
  
  AirPlay no longer allows user to LOAD a "NOT FOUND" cut from the Playlist
  
  AirPlay REFRESH no longer resets to the top of the playlist
  
  Drag-n-Drop from playlist to AirPlay Play slots now properly supports cuts with VO's in them
  
  QUAD slots were looking for the START DCL cmd file in the Data drive - corrected to look in the Audio drive.  STOP DCL was working correctly. 
  
  Corrected the spelling of the "buffers pending" message in the DAD debug file
  
  PBKstate.ini Group filtering now works on Prev and Next events
  
  Group Range Lowest mode in Recording now properly uses CutRangeDefs.ini for generating a cut number

  When in DADpad mode using DADPAD_MODE = SPLIT which uses two miniarrays on the DADpad, DAD now displays the proper number of rows (5 instead of 6) in the mini-arrays. 

  AutoFill will no longer try to fill a playlist with 24 hours worth of material if it starts AFTER it's target time.  Used to attempt to fill to the same time "tomorrow".

  Library based Segue lengths are now calculated based on the earlier of the TAIL or the SEGUE-END points.  

  Changed how playlist Refresh works in Playback machines.  Some earlier improvements we made to Refresh in AirPlay didn't make it into Playback machines.

  Revamped the new interface to Smart Chaining within Playlist Modify.   This interface, originally created for StreamLine, now works for non-StreamLine users as expected. New documentation regarding Smart Chain added to online help.   

  Updated CD RIPPER to support new SATA CD-ROM and DVD-ROM drives in AHCI mode.
  
  FAILOVER now properly working - ASPLAY location was not being updated correctly preventing the FAILOVER from working
  
  Corrected a caching problem in 4Play that would cause DAD to get stuck in a loop trying to cache the 2nd cut in the playlist loaded - degrading PC performance and causing unnecessary network i/o (when running on a network)

  When a Soft Branch transitions out of a cut that has a VO attached to the end of it, the VO no longer plays. 

  When adjusting the Head of a VO in Tracker (using yellow handle), the VO now plays at the proper time.  Used to play at the start of audio - not where the Head was set. 

  Record Machines can now be paused (Rec Machine Pause button - or PAUSE RECx DCL) even if being controlled by a Timed Record List

  Corrected problems with displaying Japanese characters in Library->Add/Modify and Record Machine fields

  Improved Library "auto" refreshing within the ENPS environment (encolibview.ocx)
  
  CutServer Client library refreshes will only result in the Library Screen itself being redrawn (blinking) if the Cutserver update affects something currently displayed in the Library.  The Library refreshes are still being done - but the blinking will be dramatically reduced. 
  
  CutServer changed to support the new Delete/Purge index
  
  CutServer creates a local file "cs_hb.txt" every 10 seconds.  Useful for C/S sanity check.
  
  Changed how Library display behaves after doing a Search regarding how it handles displaying "new activity".   Used to be the possiblity of showing duplicate cut numbers. 
  
  Changed the way DAD deals with socket connections to CutServer. Upon a disconnect - DAD will retry to establish a connection before assuming the worst and reverting to Library mode.  The reconnect occurs with a random delay in case other DAD's are trying to reconnect at the same time.
  
  Rebuild was changed in 8.0a to strip out non-printable characters from the cuts database during a Unique Rebuild. This was an attempt to clean out corrupted data (like premature End Of File characters, etc.).  Rebuild now only strips out the EOF character (CTL-Z). 
  Rebuild 8.0b changed to support the new index for Delete/Purge
  
  Internal Note: 
	  Disabled an obsolete function that was checking for an old Error Code (-310) of the Code4 object
	  correction for potential problem dropping a cut into an AirPlay array when Full Array not enabled
	  added additional "showwindow" when DAD background is resized to be sure P_Play window is redrawn
	  added more events to Verbose Debug files regarding Loading and Saving User Setups
	  
-----------------------------------------------------------------------------
                       DAD 8.0a.95 (Apr.04.2008)
-----------------------------------------------------------------------------
  New support for LiveList added to DAD and CutServer.
    1) To automatically turn specific playlists into LiveLists:
      create %datadir%\dad\files\LiveList.ini like this:
        [wildcards]
        ????08AM=
        Gene*=
        *Nick=
        Da??*=

    2) Install and Run CutServer on the Server where playlists exist
        set these in CutServer.ini
        [Database]
        Location=drive where cuts.dbf is located
        Aux Location=drive where cuts.dbf is located

    3) Set these in %location%.CFI
        [Options]
        CutServer_IP_ADDRESS= address of machine running CutServer
        CutServer_IP_PORT = 8500 (default port CutServer listens on)
        CutServer_STANDALONE = FALSE 

    Any change to a LiveList now is seen by any machine that has that LiveList loaded - no refreshing required!

    LiveList also supports Master/Apprentice/Observer modes.  A single Master running a LiveList can now be controlled from any machine running as an Apprentice.   A single Master LiveList can be seen by any machine running as an Observer.

  New option for saving Group Filters in a User Setup.  This support was previously limited to Workstation based filters.  Setup->MiscDefaults now has a switch to enable this to be User Setup based.
  
  Added RightClick->Audition to all Array buttons.   Also added the Audition play event to Array Channel Assignments to allow these events to be set to Program/Audition and control which audio device to use. 
  
  New CFI settings:
    [SYSTEM]
    Shutdown_Execute_Program = progname.exe
    Shutdown_Execute_Program_Working_Directory = fullpathname
      Allows for spawning any program at DAD exit.  Handy for forced logoff of windows, etc.

    [EDITOR]
    AUTO_ZOOM = TRUE | FALSE      (default is false)
      When true - the Editor will open using a zoom level that will display the entire audio file (if possible)

    [LIBRARY]
    Local_Display = TRUE | FALSE    (default is true)
      setting this to FALSE will disable the copying of the library to the local machine for Refreshes - meaning DAD does everything using the Network based library
 
    [PLAYBACK]
    Log_History = TRUE | FALSE  (default is false)
      Turns off new History logging database. 

    [ASPLAY]
    Log_AltCut = TRUE | FALSE   (default is false)
      when true logs AltCut instead of Cutnumber
    LOCATION = drive:    (defaults to %datadir% - like F:)
      writes Asplay log to specified drive  (under \dad\asplay)
      ex:  LOCATION = C:      
      
    [DEFAULTS]
    Load_Command_Cuts = TRUE | FALSE  (defaults to false)
      when true will load command cuts into memory when a playlist containing them loads (reduces I/O for heavy command cut processing)
      
     
  Enhanced support for SeaLevel SeaI/O GPIO devices to include Serial and USB units. Added support for addressing individual Ethernet units by IP address. Also added support for additional daisy-chained units: 

    [EXTERNAL_DEVICES]
      REMOTE=SEALEVEL  xxx.xxx.xxx.xxx (for Ethernet devices)
    or
      REMOTE=SEALEVEL COMx (for serial or USB devices)

  New/Updated DCLs: 
     1) LOAD LIBRARY  
        loads the specified library location and name (as if pressing the View/Select Library button)
        ex:  LOAD LIBRARY F CUTS
     2) LOAD RECORD LIBRARY RECx  
        tells the specified REC machine what library location and name to use
        ex:  LOAD RECORD LIBRARY REC2 F CUTS
     3) DELETE EDL [ ] CUTID []
     3) DELETE EDL [ ] CUTID []
         libloc/libname optional
         resetCues optional and is TRUE if set to T, TRUE or RESET
         examples:   Delete EDL 12345
                     Delete EDL 12345 true
                     Delete EDL 12345 reset
                     Delete EDL [D] Archive 12345 true
                     Delete EDL [f] Cuts 12345
     4) SET [CUE] changed to allow for setting a specific time for that cue
        Supports special parameter "END" to set the cue to the END of the audio file
         examples:   SET FADEIN 0.0
                     SET STARTTALK 4.4
                     SET ENDTALK END
                     SET TER END
     5) LOG SKIPPED
        sends all the AirPlay->Skipped data to %datadir%\dad\logs\skipped.txt for external use
        
     6) UNDO AirPlay | PBKx | PLmod
        Same as RightClick->Undo for undoing the most recent change made to a playlist within the specified machine
        
     7) DELETE CUT dcl's now all support append [libloc] and [libname] to support Multi-Library based deletes
          Delete Cut 
          Delete Cut Expired
          Delete Cut Range
          Delete Cut Using
        example:  Delete Cut 12345 [f] cuts
        example USING file format:   F CUTS 00001-00022
                                     D Elton 12300-12300
                                     
     8) INSTATRIM and INSTATRIM RANGE dcl's now support LIBLOC and LIBNAME for MultiLibrary use
        example:   INSTATRIM 12345 -35 [f] Cuts
        example:   INSTATRIM RANGE 10001 10004 -35 [d] Elton
        Also corrected a problem with Instatrim Range that could prevent certains large ranges from processing properly. 

     9) SELECT MACHINE now supports the LIBRARY module
        example:  SELECT MACHINE LIBRARY
        
    10) SET MIXER CONTROL  ''
		Provides the ability to set individual control lines of any Wave Mixer visible to the DAD Mixer configuration utility. This command is similar to the Setup/Configure Audio/Audio Board Definitions, “Initialize at Startup” functionality but the DCL can be issued at anytime making it useful for dynamically changing input selections, presetting levels, etc. 
		MixerID starts at 0 and is based on the number of mixers and order presented in Windows. 
		The control assignment statement is the string created by the DAD mixer to set a control as desired. 
		Example: 
			set mixer control 0 ‘initialize_boolean_0_7_1=0b77’
			
    11) SET MIXER LEVEL DCL now supports the ramp time option. 
        Syntax:
		SET MIXER LEVEL 'source' 'dest'  []
		Example to fade Line In 1 onto Line Out 4 from it’s current level to 0dB in 1 second:
			SET MIXER LEVEL 'Line In 1' 'Line Out 4' 0 1000
                         
  Added a PLAY button within the CD RIPPER to allow the user to audition a hilited track directly from the audio CD.
  
  Added indicators to Playbacks, MLOG, AirPlay to show the status of Branching for that machine.  Branch symbol indicates ENABLED.  Crossed out Branch indicates DISABLED.  RightClicking the Branch symbol will togget it's state.
    
  Added two new data fields to the Library:
      SongID (10 chars)
      AlbumID (10 chars)  
      
  Added a new field to playlist databases
      OrderID (5 chars)    (int for SQL tables)
      Contains the natural order record number currently needed for WebPlist (browser based playlist modify)
      
  New feature for Sampling within the DAD Editor.  Set the [EDITOR] SEGUE_SAMPLE_CUT = SAME | cut#
    When you press SCREEN PLAY in the EDITOR (while in Segue Mode with the Segue Markers in view) - DAD will let you hear what that Segue would sound like.   Can segue right into the same cut you're editing by using the SAME setting - or preset a Cut# of your choice to always use for this sampling. 
    When specifying a cut - Use SEGUE_SAMPLE_LIBLOC and SEGUE_SAMPLE_LIBNAME to identify what library to use.
    Channel Assignments updated to let you control what device to use for this segue sample.


  New feature in the DAD Editor.   Hold the CONTROL key down while Rubberbanding (drawing a rectangle) and DAD will auto Zoom to display the section of audio marked

  New History database created and maintained by DAD (unless disabled with [Playback] Log_History=False).  Writes minimal entries for cuts played - for new History popup coming soon.

  Added READONLY mode to playback machines.  A READONLY machine can play/stop/pause a playlist or LiveList - but can no alterations to the list can be made.
    
  Added Column Controller to the REPOSITION PLAYLIST popup in MasterLog
  
  MasterLog->MakeUp button now properly repositions to the first skipped cut within the loaded playlist
  
  When MasterLog is not enabled on an EZ Module based machine - SETUP->MasterLog no longer exits DAD

  Improved the TimedRecord->CutPreRoll feature to actually start the recorder - but not start capturing till the RECLIST start time.  This makes TimedRecord starts more accurate. 
       
  Corrected a timing situation with DirectSound buffers.  In some cased DAD could skip over the filling of a buffer making it result in audio skipping backwards then forward as it played thru the "stale" buffer.  DAD now retries this buffer filling and logs problems to the debug file (if active). 
  
  Corrected some MP3 recording issues:
    Separated MPEG and MP3 recording formats
    MP3 recordings can now be edited
    MP3 recording now support instatrim
    
  Corrected a problem with the playback PACER BAR when using a DirectSound audio device and switching between AUTO and MANUAL modes
    
  Corrected a problem with the new Group Range Lowest (CutRangeDefs) recording option when using a Library Group to control the cut numbers a record machine will generate
    
  Corrected a problem with Library Reports of Selected Entries not listing anything
  
  Changed Library->Reports->Exception reports to ignore Playlist based Voice Track files

  Library->Reports->Exception drive list is no longer dependant on MLIB defaults
  
  Corrected a problem with Library->Modify->Format->UpdateRecord for MPEG cuts.  Was improperly setting the format to MP3 not MPEG. 
  
  Library->Add and Library->Modify screen made larger (800x600) allowing the longer fields to be more accessible
  
  Library->Delete now properly updates the QuickSearch database KILLDATE field (if "KILLDATE" is part of SCONTROL.DAT)
  
  If the LIBRARY window was displayed before DAD is minimized, it is now displayed when DAD is restored. 
  
  Added the ability for a User Setup to turn off the ALL group when viewing the Library.   In SETUP->MiscDefaults there's a checkbox to turn off "ALL"
  
  Added the ability to set a default Library Group to select when a User Setup is loaded.   See Setup->UserDefaults to control this.
    
  Corrected a problem with Playback State not properly creating XML streams for [GROUPS] specified in the PBKstate.ini file.   Was creating an XML for all groups - now properly creates for only the groups specified.   Related to this, DELAY events (which have no group) were being passed and are no longer.   If XML for DELAY events is desired, add "DADdelay=" to the [GROUPS] section.
    New section for PBKSTATE.ini will add  tag to Playback State XML output containing the variables specified
       [Environment Variables]
       Var1=
       Name=
  
  Corrected the SEND PLAYBACK STATE PBKx dcl.   Was not properly acting as a Playback State "trigger" - does now.
    
  Changed where the RE-PLIST DCL runs from.  Used to use %datadir%\dad\progs\re-plist.exe (like f:), now uses %appdir%\dad\progs\re-plise.exe (like c:)
  
  Corrected the Title in Playlist Reports so the playlist name properly displays when the [v1] variable is used witin the .rpg report writer file.
  
  Corrected a problem with the ALL HOURS checkbox in Adding/Inserting a Branch Event into a playlist.   The status of this checkbox was not being saved on initial creation and would only work after editing the branch entry in the playlist.
  
  Using a single ALL HOURS branch in a playlist now works.  Used to require other branch events to be there. 
  
  DAD now traps Shift-Escape so it no longer behaves as an exit.
  
  Corrected an issue with Quad Decks pacer bars "bleeding thru" to other quad decks of different pages which also changed the behavior of the LOAD/PACERBAR button of decks which may or may not be playing.
  
  Corrected an issue with Quad Decks not being able to handle a DCL that contained DPL
   
  Improved the CFI Setting: [PLAYBACK #] AUTO_POSITION to handle Change/Return.  Specifically when pressing RETURN - the Auto Position hilite bar is maintained properly. 
  
  When moving an EDITOR head/tail pointer while playing, DAD used to restart the play from the new pointer position.  This restart was inadvertently turned off and is now back on.

  When pressing the SpaceBar in the EDITOR to play/pause - the zoom level is no longer effected
  
  Changed the Touch Keyboard popup (double click on any data entry field) to allow for normal keyboard input
  
  Library->Reports->Asplay & Asplay2 reports and Copy are now supported in SQL mode
  
  Library->FullSearch window pull down lists now contains the KillDate field
  
  DAD now behaves properly after adding an expired/inactive cut into the playlist (with Start/Kill data switches active in Setup->MiscDefaults)
  
  Corrected an issue that could sometimes result in DAD just stopping because audio devices weren't available when DAD needed them to be.   The logged message was "Autocheck pending RESET!".   More info is now logged and DAD tries to move on.
  
  AirPlay could get into a mode where cuts could not be loaded and nothing could be played.  This occurred during a failure or error trying to CHAIN.  This condition has been improved to better handle the Chain failure/error and auto-correct itself.
	
  Corrected a problem in AirPlay (in Grayout mode) that would cause played cuts to change color to the NeXT TO PLAY color (instead of gray) after dragging cuts into the currently playing hour of a playlist.
  
  Corrected a problem in AirPlay (Drop Default Insert mode) when dragging a cut from the Library into a play slot - the last slot was bumping out but not into the skipped list.
  
  Corrected a problem in AirPlay not properly handling the loadig and clearing of NOT FOUND events from the playlist.
  
  When refreshing the playlist in AirPlay - the hilite bar indicating what's playing now (if playing) is now maintained.  Refresh used to clear it making it difficult to see what's playing within the list.   Other colors (skipped, completed) are maintained now as well.

  Added a RightClick on the AirPlay->SKIPPED List - sends all the skipped column data to %datadir%\dad\logs\skipped.txt for external use.  New DCL:  LOG SKIPPED does the same thing.

  Change the auto-refreshing of the Library when running as a CutServer client and some other client makes a Library change.
  
  Changed the CMDS.txt (DCL online help file) to properly describe the MODIFY CUT[/i] and MODIFY CUT[/i] RANGE DCLs.  The [/i] option processes the Modify request "instantly" rather than placing the request at the bottom of the DCL queue.   Also corrected the order of the ENABLE AGPO and ENABLE BRANCHING examples. 
  
  Improved some the cosmetic problems with graphics (pacer bar overuns, parts of buttons missing, button label colors, button consistancy, etc.)
  
  CREATE ROTATE (in main Playlist popup and RightClick on Playlist bar) now properly creates a Rotate cut from the selected playlist (was inadvertently disabled).

  Play a rotate cut that's full of inactive/expired cuts from within another rotate cut no longer stops automation.  DAD will play nothing, but follow the transition instructions. 
  
  The Library caching techniques added in 5.2d had an adverse effect on CutServer clients.   This has been corrected in DAD and CutServer (1.5f or later)
  
  Corrected an issue with an unexpected exit when using Tracker involving the playing of the Outro cut and the recorded VO
  
  Intro cut in Playback machines now properly follows the Level set within Tracker

  Command Cut Editor -> Raw Edit mode now allows up to 256 characters per line
  
  FAST-FORWARD and REWIND functions of the CUE machine now behave properly.  Was playing only normal speed with ASI cards. 
  
  Changed the PBK Pause button so it doesn't lose it's blue color and after counting down the Talk Time - it's label reverts back to PAUSE
    
  Enabling Array Stack Play and actually creating a "stack" of cuts now prevents LOOP ON from being used for anything in that stack
 
  Array Button Right Click options now grayed out when they are not available.
  
  User can now drag-n-drop cuts onto idle Array buttons - even while some other Array button is playing.
  
  When an Array Button is in Loop Mode - the letter "L" is appended to the cut number displayed in that button.
  
  Corrected a problem with LibView in Array so that the field selected for searching is the field actually used for searching
  
  Array Lib View now supports the DADpad device - number of buttons displayed now match DADpad buttons
  
  Corrected a problem with using Set Cues on Array buttons that could have resulted in some Array buttons disappearing
  
  When ARRAY is in PRESET assignment mode (setup->MiscDefaults), the setting for OneShot/Multiple is now used to control the PRESET button.
  
  Chaining to a large playlist (1000+ events) now Autoplays properly
  
  Top-Left button text no longer changes in response to GPI On/Off DCLs - unless set to GPI mode.
  
  DAD now supports MPEG on an ASI card that supports MPEG when the MPEG codec is not enabled in the key.

  The ripper now properly generates waveforms when ripping to MPEG
  
  Playlist Scan reports now properly find "inactive" cuts based on DOW settings
  
  Smart Chain for playlists is now accessible from within DAD Playlist Modify.   When adding or inserting a Chain event - within the list of playlistss are "Smart Chain" codes for the various types of Smart Chains available. 
  
  Smart Chains now properly uses three characters when using DOW  (MON, TUE, WED, etc.)
  
  Corrected an issue with the Record machine settings not allowing an MP3 selection to be changed
  
  Hook mode for Playback machines now changes the LENGTH displays for the cuts in the playlist and play slot to Hook Lengths. 
  
  Segue Editor now moves from cut to cut within an AirPlay playlist when using the Next function (just as it has always done in playback machines)
  
  DAD now turns on the padding bit for MPEG 44.1 recording when using a ASI 6520 audio card.  Without this bit set, DirectX machines could not edit the audio recorded (no waveform).
  
  ASCII Import of a DAD playlist now supports LibLoc (columns 133-134) and LibName (135-142) fields
  
  DAD now properly regenerates GUID's in the Library when using the command line:   DAD -guidfill
  
  FadeIn duration must now be at least 200ms.  
  
  Deleting an element from a playlist in AirPlay or any Playback is now logged in the debug log
  
  Corrected an issue with AGPO introduced in 5.2d (for Visiblu support) that prevented some AGPO's from not processing correctly

  Send Text x filename - now properly transmits the specified file

  Setup->CFI&ReadMe is no longer "modal" - you can control DAD windows that are open "behind" it. 

  Issue a DAD Command (Library->Command or DCL button) - Input Command string length has been expanded to support the maximum length DCL. 

  RE-Plist (8.0a) is now a 32bit console app.  It now has a method for checking to see if anyone else is doing a re-plist before engaging in updating the plist database.  It will now wait till any open re-plists are done before letting DAD startup.
  
  AudioCVT (8.0a) now has an AudioCVT.ini file to keep track of default settings.  This will allow multiple AudiocVT's on one machine to have different defaults (like one for DAD, one for Gateway)
  
  Rebuild (8.0a) now places date/time stamps on entries to the c:\dad\logs\*.RBL log files.  Also has a better procedure for handling the REopening of the newly created database that could have been an issue on marginal systems.

  CutServer properly purges deleted cuts.  Requires CutServer 8.0a or later
  
  CutServer now sends DCL's to DAD clients
  
  Initial support for Digigram visiblu Networked Audio System.
  
  Added native support for all Digigram "HR" and "e" cards: PCX22HR, PCX22e, PCX881HR, PCX881e, PCX882HR, PCX882e, PCX924HR, PCX924e, PCX1221HR, PCX1221e, PCX1222HR and PCX1222e. To utilize the full power of these cards, DAD 8.0a communicates through the Digigram HR Runtime driver. To enable this mechanism, the DAD CFI file must have ALLOW_DIGIGRAM=TRUE and DIRECT_SOUND=FALSE. 
  
  Corrected AudioCVT (now 8.0a) to properly handle converting "multiple" Dolby audio files.  Was only processing the first Dolby cut properly.  The rest were empty. 
  
  Changed security key access to support new 7.4.0 Safenet driver (AudioCVT 8.0a too).  ENCO recommends removing the existing Safenet/Sentinel driver with Add/Remove Programs, reboot, then install the proper 7.4.0 driver using c:\dad\drivers\Rainbow\7.4.0\setup.exe.   Also added registry setting for Sentinel driver to place it in the proper mode automatically.

  Updated CD/DVD rom driver (for ripping) to support new SATA CD/DVD drives

  Installers now combined into one setupENCO-xxxx.exe.  Includes: DAD, GateWay, DropBox, all utilities.
      
  Internal changes to:
    - strdup to allow for Sentinel bahaviour with malloc/free
    - library caching methods to reduce memory consumption
    - search processing problem that resulted from older temp search files from improperly being used
    - make updating of dadStations.ini a background thread
    - turn of DADstations.ini using [General] Monitor Logins = FALSE (in dadstations.ini)
    - very verbose audio debuggins using /DEBUGAUDIOPLAYBACK on DAD command line
    - no longer log DELAY stops
    - how branch events at 0:00 GMT get processed.  In some conditions that exact branch could be missed.
     
-----------------------------------------------------------------------------
                       DAD 5.2d.265 (Sep.22.2007)
-----------------------------------------------------------------------------
  Corrected a problem with support of PCI based GPI/O cards introduced in 5.2c
  
  Corrected a problem with AirPlay Chaining using an autoLoad and Segue transitions

  Enhanced the DCL added in 5.2c SET TRANSITION AIRPLAYx  to support the currently playing slot.
    Syntax: SET TRANSITION AIRPLAY    (note no slot number specified)

  Added 5 recently added fields to the CopyFields utility in \dad\progs
  
-----------------------------------------------------------------------------
                       DAD 5.2c.257 (Sep.14.2007)
-----------------------------------------------------------------------------
  Revamped how DAD interacts with a network based Library to minimize network I/O.   A local copy of the CUTS.dbf is created in C:\TEMP.   All displays of the library are now done using this local copy.   All writes to the database are made to both the local and the network copy of CUTS.dbf.   If a user wants to be sure to have the latest Library - use the Library->Refresh button.  Cuts hilited in the Library are no longer effected by the addition or removal of cuts before or after the hilite so you can be sure what you hilite is what you'll operate on.  Implemented a new caching technique to further minimize file i/o for activities like "mouse over" in library lists.

  Added new kind of Autofill for Playlists - called FILLCUT.  Allows the user to mark cuts as being usable as a "fillcut" by entering a category letter into the FILLCUT field for as many cuts as desired.  Then when specifying a FILLCUT start/end pair for autofilling within a playlist, cuts of the longest length found with a match of the category letter are used for filling wherever the "FILLCUT HERE" element is used (between the start/end pair).  This allows the user to control where the filling is done (AUTOFILL fills at the end of the existing elements).   The FILLCUT fields gets modified as cuts are used for filling to help DAD pick the least used cut first. 

  Added MPEG Layer 3 as a valid choice for Record Machine format settings.  May require an audio card or Software Codec capable of MP3 encoding.

  Added four new data fields to the Library (cuts database)
    ACTOR (60 characters)
    ACTRESS (60 characters)
    DIRECTOR (60 characters)
    LYRICIST (60 characters)

  Added the 4 new fields above plus Album and Genre to the Column controller list for Playlists

  Added new style of generating cut numbers.   Based on the CutRangeDefs.ini file - this mode allows cut number generation to be controlled by what Library GROUP the user has selected.
    Related to this a choice of Generate NO cut number has been added.  This forces the user to enter a number.

  Added support for COM ports above COM4 (thru 26) for the Broadcast Tools BTSRC32 serially controlled audio switcher

  AirPlay changes/corrections:
    1) corrected a problem that would result in multiple cuts in a playlist getting marked as loaded into the same Play Slot
    2) corrected an elusive CHAIN problem that could have resulted AirPlay just stopping
    3) corrected problems introduced in early 5.2c that resulted in very erratic overall behavior
    4) after toggling from Auto to Manual - user can now Right Click to Unload a slot
    5) toggling transition within the play slots in conjunction with toggling Auto/Manual now works properly
    6) you can now drag a cut from the library into a slot (replace) and then drag a cut into that same slot from the playlist.  AirPlay would only recognize the Library dragged cut.
    7) corrected a problem the prevented the playing cut from being hilited (in RED) in the Playlist
    8) AUDITION button (when used to audition a cut from the Library tab) now uses AirPlay AUTO Audition channel assignments
    9) Added RightClick->Editor and RightClick->Modify  and RightClick->View Library
       to the Library Tab elements
   10) SMART REFRESH (rightClick on a playlist element or the playlist bar) now supported in AirPlay
   11) corrected an error in Slot/hilite color changes.  Note that a USER SETUP save is required if changes are to be remembered from session to session
   12) dragging a playlist element to a lower position in the playlist will properly AutoCalc Time fields (if auto_calc = true, etc.) and will properly deal with the ondeck elements
   13) adjusting the horizontal or vertical window separators will now redraw AirPlay properly
   14) dragging a playlist element into the currently playing hour no longer clears the playing now hilite
   15) inserting a cut with RightClick->Insert or Move/Put now properly updates the TIME field in the playlist (when using auto_calc)
   16) dragging a playlist element to the first position after a Time Marker now properly updates the TIME field in the playlist (when using auto_calc)
   17) inserting a cut into the 23:00 hour (11pm) when that hour has over 60 minutes of material now properly updates the TIME field in the playlist (when using auto_calc) so that times over 23:59:59 can be displayed
   18) Changed the text of RightClick->Save Playlist to "Save Playlist As"
   19) deleting an entry from the playlist now properly updates the TIME fiels in the playlist (when using auto_calc)
   20) dragging a playlist element across a Time Marker now properly updates the TIME field on both sides of the Time Marker (when using auto_calc)
   21) when using the Slot Load Arrow to load an Expired Cut - DAD will no longer allow the load
   22) when deleting a playlist element just before a Time Marker - played cuts that were greyed out stay grey (were taking on the color of the currently playing cut
   23) corrected a problem when Chaining from anything but the bottom slot - was loading the next playlist - but playing from the slot below where the Chain processed from.
   24) corrected a problem with switching to Manual Mode and stopping a slot that started playing in Auto Mode
   25) corrected an issue that could occur if a finishing slot is trying to reload itself from the playlist while other slots are doing a SEGUE.  DAD was historically not allowing loads to occur during (or very close to) a Segue transition.  That restriction has been eased. 

  Added a display of the number of records in the current Library list at the bottom of the REFRESH button

  Added support for SLATE markers in Quad Players, Array and P_PLAY buttons.

  New CFI setting:
		[System]
		Check_for_DCL_Msg = true | false   (default is false)
     When set to TRUE - every 30 seconds, DAD will scan \dad\files\ for a file named %location%.DCL.  If it finds one - it will consume the file and process any DCL commands found within it.

  New DCL:  SET TRANSITION AIRPLAYx y    (x=slot#  y=transition(A,L,S,N)
     changes the transition on the specified AirPlay to the specified transition
     ex:  Set Transition AirPlay1 S

  Added to the DCL:  PLAY MINARx p r c (p=page r=row c=column). 
    Page can now be set to 0  (play minar1 0 r c) to tell DAD to play the button specified by r and c on the currently selected page. 
    

  CFI setting:  [Tracker] Waveform = OFF | False
     once again prevents the waveform from drawing (for slow machines) and has been changed to properly work on different audio cards
     
  Addressed an issue with playlists and Tracker production elements that would result in the prod element not playing. 

  Corrected a problem with REBUILD when running with no MLIB (multilibrary) files.   Rebuild would not properly create the daily backup library files
    Also changed rebuild to add new indexes for FILLCUT.

  The new field RECORDTIME is now fill at Record Start time rather than at Record Stop time.

  Added Cut Pre-Roll to preload the Record Machine early to allow for more accurate timed recordings.  This can be set on an individual record event basis or can be set globally in the CFI using [Defaults] RECORD_LIST_CUT_PREROLL=.   Ex:  RECORD_LIST_CUT_PREROLL=2000 will set the Cut Pre-Roll to 2.0 seconds (2000 milliseconds) on each record event added to a RecList.   Note that existing RecLists will need to be re-created.   This setting is NOT retroactive to existing RecLists or record events.  Also made some improvements to make Timed Records stop more accurately.

  Increased the Type Ahead string length when sorted by Title (or other Alpha fields).  Was limited to 4 characters and using more than 4 would ignore the entire string.

  Changed playlist type ahead entry to prevent non-existant cuts from being added/inserted into a playlist.  Example:  type 12345  and the cut 12345 gets added to the playlist (only if it exists).

  Corrected a cosmetic problem in displaying a DELAY event in a Playback Pacer bar.  Only the countdown timer was updating - not the pacer bar.

  Widened the Mixer Name list in Setup->ConfigAudio->AudioBoardDefinitions to make longer names easier to read
    Also added two checkboxes "WAVE"and "WDM/DX" to allow narrowing the list down to those kinds of devices.
    Also changed the way the Windows Mixer Names are read to allow for similarly named devices to be distinguishable.  For example - using two Innes Auricon boards is now supported.

  Corrected a problem with processing GPO's for Mixer defined audio boards

  Corrected the use of START DCL when played from an ARRAY so that it properly looks for the audio based on LOCATION.  DAD was improperly looking in the %datadir% (i.e. F:) so START DCL would not work.

  Corrected a problem with DoubleClick on a cut in mini-Playlist Modifier (PLMOD) to add it to a Playlist

  Corrected the ADD ALL button in full screen Playlist Modify (wasn't working when a group was selected)

  Corrected the ability to mark cuts for deletion in a Library Search results screen

  Group Tabs between Library and Playlist Modify screens now sync properly

  DAD now "remembers" the last Library size and position used in the User Setup (User need to Save the User Setup)

  Using the EDIT button from within Library->Modify and then doing a SAVE (in the Editor) will now update the head/tail point data within the open Modify screen that may have been changed in the Editor.

  Corrected the DCL:  DELETE CUT xxxxx  (was improperly returning a -1)

  Focus no longer jumps to a transitioning Playback machine

  These CFI settings now officially ignored:
     [Playlist]
     Refresh_Pattern_Matching
     Scan_And_Inject_Path
     Scan_And_Inject_Period
     Scan_And_Inject_Type

  Command cut files can now contain up to 1999 characters (spaces included)

  Improved Library refreshing within the ENPS environment so wrong cut numbers aren't selected when hiliting

  Corrected CutServer (now 1.5d) relating to a problem with it refusing new connections.  Now supports 128 connections (was 64)

  Added RecListGen utility to c:\dad\progs (and to ftp://ftp.enco.com/pub/win32).  This is a handy application to help create cuts and a DAD RecordList (RecList) suitable for loggin daily (24 1hour cuts) or weekly (168 1hour cuts).   For Monthly logging - create multiple weekly RecLists and reuse.

  Added RangeMove utility to c:\dad\progs (and to ftp://ftp.enco.com/pub/utilities).  This is a handy application to help renumber a range of cuts.

  Corrected an internal problem with the "auto_check pending" mechanism used by playback machines (and mlog/airplay).  It was occaisionally getting into a state that would simply stop automation and could prevent branch events from triggering as well.  DAD now detects and handles this state even more automatically.  A debug entry has also been added to log this auto detection event.

  Initial integration of the DADminAgent.  A service called DADminService is installed and set to Automatic startup.  It spawns a small application call DADminAgent (that shows up in the System Tray).   Both can be ignored for now.  They can be closed and even removed - but they will be reinstalled and started each time setupDAD is used. We recommend you just leave them alone for now.  They will become more useful in the future. 
  
-----------------------------------------------------------------------------
                       DAD 5.2b.175 (Jun.24.2007)
-----------------------------------------------------------------------------
  Added support for SeaLevel GPI/GPO devices (pci, usb, ethernet).
    After installing the device using SeaLevel procedures - use:
      [EXTERNAL_DEVICES]
      Remote=SeaLevel
    DAD will autodetect all ports created by as many SeaLevel devices you install.

  New DCL:
	  ALERT STACK ON|OFF   (default is OFF)
	Allows Alerts to be stacked up on top of each other (default is to replace any existing Alerts)

  Added more "Operator Event" entries to the debug log (when in Verbose mode only) (button presses, etc.) to help track operator activity when investigating abnormal DAD behavior.

  Pressing EDIT in Library->Modify when looking at a Command Cut (DCL) will open up the Command Cut Editor for that cut.

  Corrected an error in handling branch events set to 17:00:00.  Was an issue with Intelligent Next.

  DAD now allows the CC:CC:CC format (current time) as a valid branch time.  There was a valid time check added that prevented "cc" from looking valid.

  A problem with repeated loading of a playlists into any automation machine has been corrected.

  Corrected a problem with running a Library->Reports->Playlist report after doing a Search or changing the Library Group.

  The "default" checkbox for Default Library in Multiple Library maintenance is now remembered and used.

  Double clicking a cut within the Mini-Playlist Modifier no longer causes problems.

  Issue DCL Command window title changed to: "Issue a DAD Command (DCL)”
    Pressing "ENTER" in this window executes.   Pressing "ESCAPE" exits.

  Command Cut Editor window title change to: "COMMAND CUT (DCL) EDITOR"
    Pressing "ENTER" in this window saves.  Pressing "ESCAPE" cancels.

  The "Load List" button Timed Record changed to "LIST" and the title of this window changed to: "Record List"

  With AirPlay in Manual mode and Query Auto Drop enabled, INSERTING a cut into a slot above a playing slot, now prevents the user from doing it (just like Auto mode does).

  The PLAYED field in the playlist display of AirPlay will no longer show a predictive letter on comment lines.  Comment lines do not get loaded or played - so the PLAYED field of a comment should never have anything on it.

  Slot Prediction in AirPlay (letters in the PLAYED field) can now be disabled with this CFI setting:
    [AirPlay]
    Slot_Prediction = false

  DAD once again allows the user to drag cuts from AirPlays playlist to the Skipped Tab.

  Adjusting Head and/or Tail in CUES settings for Array buttons now properly saves both markers.  DAD used to require that both be set within CUES.

  Added 120,180,240 and 300 second support for Autofill playlists.  In CFI:
    Example: AutoFill120 = playlistname

  When using Type Ahead ahead in any Library List - user can now use ENTER, HOME, END, LEFTCLICK, or RIGHTCLICK to clear the type ahead buffer (to start over for example)

  XMLIngest (c:\dad\progs\XMLIngest), now handles multiple ingests and Smart Refreshes DAD's properly after doing multiple ingests.

-----------------------------------------------------------------------------
                       DAD 5.2a.159 (Jun.8.2007)
-----------------------------------------------------------------------------
  Added "Source PreRoll Time" to Timed Record Parameters.  This allows the ISx (switcher) commands to be sent X.X seconds ahead of the start of recording to give slow devices a chance to communicate properly.  Default is 0.0

  Added RightClick->HeadQuickSet to the Playlist Bar of Playback Machines to allow the quick setting of a Head point for the cut in the Play Slot (while not yet playing).  Similar to CUES machine but much more simple and only for HEAD point.   Displays time remaining as well to help back time a cut.   Available on QUAD slots as well.

  Added "drivelist" to inter-library move/copy for controlling LibLoc
    (where the audio files will get moved/copied)

  Added the ability to renumber cuts when moving/copying from library to library

  Added support for the Broadcast Tools SRC16 audio switcher.  Requires these settings:
     [SERIAL]
     COMx_INFO=38400 N 8 1    (x = com port #)

     [EXTERNAL_DEVICES]
     REMOTE=SRC16 x           (x = com port #)
     GPO_GPI=16 16 32
     GPI_REVERSE_SENSE=TRUE

  Finalized support for the new SET CHANNEL dcl:
    SET CHANNEL  [Px][Sx][Ox][Ax]
    Allows for redefining (setting) the Channel Assignments for its Playback, Segue, Over, and Audition events to any valid channel (x).
    You must specify the , but only the [events] you want to change need be specified.  This provides more complete channel control than the Set Device dcl.

  Revamped pacer bar displays (play progress bar) to better match the buttons they reside in

  New CFI:
      [ASPLAY]
      Include_Multilibrary_Fields = FALSE
    default is FALSE - write Asplay files without LibLoc and LibName fields so legacy systems can read them without alteration

  StartDCL and StopDCL introduced in 5.1a now support non-Playback style machines (Quad, Array)

  Updated Playlist Popups to match the new style buttons introduced in 5.1a

  Editor->Save->Save (cues) now properly generates StreamLine cut Update message (length changes now get into PowerGold correctly)

  Editor->H/T List now properly plays head/tail entries in the list

  Enhanced Playback State (PBS) to support filtering by triggers, groups and minimum length.  \dad\files\PBKState.ini now supports these:
      [Config]
      Min Length = x.x   (seconds)

      [Groups]
      Songs=
      Music=
      ; etc. etc.

      [Triggers]
      PLAY=
      ;STOP=
      ;NEXT=
      ;LOAD=
      ;UNLOAD=
      ;ADD=
      ;DELETE=
      ;INSERT=

    These settings allow the user to minimize how much Playback State (XML) data is created and sent.   The defaults (send everything) can overload easily.   ENCO HIGHLY recommends using these filters! This controls both the creation of the XML file and streaming of the XML data.

    Also corrected PBS to support AirPlay in MANUAL mode

    Also added the ability to specify a PBKState.ini file for each DAD workstation.  Using CFI setting:
        [PLAYBACK]
        State_INI_File =  c:\dad\WXYZ.ini
      If not specified - DAD defaults to %datadir%\dad\files\PBKState.ini
      If no PBKState.ini file is found - PLAYBACK STATE will not work!

    Also corrected a PBS triggering problem if multiple DCL's were issued at the same time.  Example:   PLAY PBK1:AUTO PBK1 would properly start PBK1 playing, but would not trigger the PLAY PBS. OK now.

  Setup Screen rearranged to remove some of the Legacy buttons. Save/Run, Save/Stay, and Accept/Run turned into one RUN DAD button.   Save is now embedded into the current User Setup button.

  AirPlay corrections:
    1) FULLAUTO now reverts to Normal if user intervenes with Auto/Manual or changes transitions
    2) When Semi-Independant slots are used - LIVE mode is forced on
    3) When playing a Semi-Independant slot - Auto/Man is now set to LIVE
    4) Loading a Semi-Independant slot (with the Load Arrow) no longer forces the playlist position to be CHANGED.  User can now RETURN as expected
    5) Corrected the Config checkboxes for enabling/disabling the DCL buttons
    6) MANUAL mode now supports Playback State (XML)
    7) AutoDrop is now automatically enabled when choosing DropDefault mode
    8) Query Auto Drop and Drop Default can not be selected at the same time
    9) When using the CUES machine in AirPlay - the Selected Cut is used
   10) When using Semi-Independant slot now automatically sets Live Mode
   11) Corrected a problem with emptying then trying to reuse USER TABS
   12) Corrected a problem that resulted from drag-n-drop into a UserTab in the Library Panel
   13) Groups selecting (tabs or list) corrected in SQL mode
   14) Corrected a problem in processing Hard Branches - in some cases it was simply ignoring the Branch

  Using Full Screen Playlist Modify (Library->Playlist) is now supported even if no Playback Machines EZ Modules are enabled.

  Corrected a problem with CutServer clients not getting the right cut if some other client was adding records to the Library

  Improved text field editing (Home, End, Ctl-C/X/V, Shift Arrows, etc.)

  Time in scrollable lists now display as h:mm:ss.x or mm:ss.x instead of decimal seconds

  Added calculated Segue Length Display to Playlist lists (SegueLen minus SegueStart) displayed as mm:ss

  Added fields to Library for RecordTime

  Added EDIT button to Library->Modify

  Added MODIFY button to the EDITOR

  When a cut that has URL/BILLBOARD data is Auditioned - that data is sent to the Script machine

  Improvements to Phonetica interface.  Only runs as client to PhoneticaSvr now.  Support for simultaneous searches from multiple workstations

  Corrected a problem with Editing right after doing a recording that could result in instability

  Corrected the setting of the mode of the EDIT button within the ENPS DAD Library interface to utilize the settings for the Library->Edit button in the CFI

  Corrected a problem with the REFRESH button in the ENPS DAD Library interface to properly handle resizing ENPS windows

  Changes made to support SQL again (new database close routines, new sorting, multilibraries, reclist support, Chaining, etc.)

  Added the ability to execute an SQL command.   While displaying the main Library - use the ALT-S keystroke to open the SQL Command window.  This will be enhanced in the future to allow for more complex commands and external SQL scripts.

  Corrected a problem in the XMLIngest utility that would result in the inability to function after ingesting XML files for about a week

  Corrected a problem when issuing the PLAY Array/Minar DCL - when the target array page was different from a currently displayed page was resulting in the blinking and countdown of the wrong button on the wrong page

  Add/Edit Branch Events windows now checks for valid times

  Playbacks 5 thru 16 now support the CUES machine

  Corrected a problem with:   Clear_Active_Data_On_Record=True DAD was clearing out the Active Time and Kill Time but not the StartDate or Kill Date - OK now

  Corrected the buttons on Timed Record to have increasing the time pointing to the right

  Corrected a problem with playing Voice Overs created in Tracker.  In some cases the VO was not playable or displayable.

  Corrected a problem with the Library->Reports->Exception report that would fail to report some stranded audio files

  Reformatted the Library->Reports->Exception report to properly handle the increased length of the Title field

  Corrected a problem with saving Cart Chunk data for PCM24 audio files

  AddCart utility (in c:\dad\progs) now supports PCM24 audio files

  Corrected a display problem in the CUES Machine.  The SET HEAD and SET TAIL timers were not properly showing the time set by the user

  Corrected a problem with Type Ahead (jump to) in Library Pop-ups when sorted by Title

  Added minimize buttons to the Library Popup screens

  Corrected a problem with the Cancel playlist saving (Refreshing after making playlist changes).   Was forcing the refresh and not allowing the user to save the changes.

  Corrected a problem with REFRESH  that could result in doubled up playlists...

  Corrected a problem with Type Ahead (jump to) in playlist modify when sorted by Title that was interpretting the Title typed as a cut number and improperly trying to add that to the playlist

  Corrected a cosmentic problem in MasterLog that resulted in the START button improperly changing to a stop mode shape during a Superplay

  Corrected a positioning problem in Masterlog that would result in the playlist position getting changed when trying to open Tracker on one of the slots (with CHG/RET not indicating or asking for a change)

  Removed the method that allowed for clicking on a title bar button for a window NOT in focus.  Was having a side effect of popping up windows on their own (like help, column controller, etc).

  Corrected a problem with Consume Cuts mode for Playback machines. When a cut is stopped manually, the cut was deleted from the playlist but improperly left in the play slot.   Manual stops no longer consume.

  Using Control-Enter and Shift-Enter keystrokes are now trapped and mapped to Alt-X (DAD Exit).   Proper prompting for Exit now provided.

  Changed REBUILD (\dad\progs\rebuild.exe) to add new library fields (like RECORDTIME) in such a way that older versions of DAD will still run properly

  Preliminary Internal "reindex" support added for:
     All, Cuts, Groups, Plist, Search, CutSec
     Examples: ReIndex ALL,   ReIndex Cuts
     MLIB examples: ReIndex Cuts F Rock, ReIndex CutSec F Rock
     This could elimintate the need for Unique Rebuilds

-----------------------------------------------------------------------------
                       DAD 5.1f.66 (Mar.7.2007)
-----------------------------------------------------------------------------
  Added UDP support to SEND TEXT x FILENAME.   Note that UDP has a maximum transmission size of 4095 bytes.  If Filename is larger than 4059, the Send Text Filename will not send

  Added support in CD RIPPER for CD's with the same DISCID.  These ID's were supposed to be unique (in the world), but are not any more.   If the track info doesn't match - you can now select the CD from a list of CD's that have the same DISCID.

  Changed the ENPS Library View (ENCOLibView.ocx) to properly support:
    a) Cuts added by CutServer
    b) New REFRESH button in that interface
    c) The use of Group Filtering to limit the number of Group Tabs a user sees

  Corrected the "COPY ASPLAY" dcl.  Was causing DAD to shut down

  Correctly restoring the state of the new TOPLEFT Button control at DAD startup.  Was added in 5.1e via SETUP->MiscDefaults

  Dragging cuts in the Library into a Group Tab now generates proper StreamLine messages for ALL cuts dragged.  Was doing just one message for the first cut

  Cut/Paste button in the Editor text changed to fit within the Button

  Setup->ReadMe->ENCO now points to \dad\help\contact.htm (ENCO contact info)

  Corrected a problem with turning off DEBUG/VERBOSE mode checkboxes in F10.  Was causing DAD to shut down

  Corrected a problem with Editing an MPEG cut in zoom scales less than 5sec

  Corrected a problem with AutoRecalc of cuts in a playlist immediately following a TIME MARKER.   The TIME MARKER is now properly used as the "base" of time for everything following it.

  Corrected two problems with AirPlay and Branching and Next to Play
    1) After a Branch occured it was not reloading the slots properly
    2) Load Order (event marked as loaded, etc.) was wrong

  Setup screen now has "X" to close (was "-" minimize)

  Setup copyright box now has a link to http://www.enco.com

-----------------------------------------------------------------------------
                       DAD 5.1e.422 (Feb.26.2007)
-----------------------------------------------------------------------------
  Added icons to machine title bars to allow easy access to:
    a) Channel Assignements (use musical note icon)
    b) Machine Configuration (use diamond shaped icon)
    Notes:
       the "C" icon is for the Column Controller added in 5.1d
       the "?" icon is for online help for that machine
       the "-" or "x" icon is to minimize or close a window
    Improved access to these icons so double clicking no longer necessary

  Added Mouse Over "tool tips" to the small and large Machine Pickers to help new users get accustomed to DAD Machine names

  New CFI settings:
    a) [Playback]
       Branch_Defeat_Delay = x    (x in seconds)
       waits X seconds after any branch before doing another branch
    b) [Serial]
       COMn_INFO = 9600 N 8 1
       IO_n = X            (X = com port #)
       Heartbeat Port = X         (X = com port #)
       Heartbeat String = blah blah
       Heartbeat Period = Y       (Y in milliseconds)
       Every Y milliseconds DAD will send the String out Com Port X (as defined by IO_n and COMn_INFO)
    c) BACKGROUND_WAV_PROCESSING = TRUE (the default)
       When using a non-NP (digigram), non-DirectSound audio card (most likely using a WAV driver only), on older non-hyper threaded machines.
       This should be set to FALSE.
    d) [EDITOR]
       SIZE = Small, Medium or Large
       Allows for three different size EDITOR screens users can use based on screen resolution
    e) [SYSTEM]
       User_Setup_Recalls_Array_Pages = true | false (default is true)
       Controls what pages Arrays are set to when recalling a user setup.  By Default the pages that were displayed when the user setup was saved are displayed.
    f) [RECORD]
       Clear_ActiveKill_Data_On_Record = true | false (default = false)
       When true - recording over an existing cut will clear the Active and Kill Date/Time fields

  TopLeft Button of DAD's top row of buttons is now User Setup based.
    Control for this can be found in Setup->MiscDefaults->TopLeftButton
    Default is now main Online HELP Index.  Choices are:
        Online Help
        Security
        Recall User Setup
        Issue a DCL (command)
        GPI On|Off (what was there for years)

  AirPlay Changes:
    1) Added Group Tabs to the Library Panel making it even easier to select a Group

    2) Added a larger space between the AUTO and INDEPENDANT slots

    3) New Mode:   FULLAUTO
       Places the specified machine into Absolute Automated mode - ignores all autoLoad and Normal transitions (making them Segues).
       Handy for emergencies. Accessed with RightClick on the Airplay->Playlist bar as well as this DCL:  FULLAUTO AIRPLAY on|off
       When active - the word FULLAUTO displays in the Title Bar and autoLoad events turn from RED to PURPLE in the pacer bar.

    4) RETURN AIRPLAY dcl now working properly

    5) Audition Buttons now displays what it's playing when used

    6) Clock now uses a normal font (was old stlye 7 segment LED)
       Added Day and Date to the bottom of the Clock

    7) Config now allows either Mini-Array 1 or 2 to be "attached" to
      AirPlay and displayed in any available space below the lowest Play slot.
      Very useful when only uses a few slots in AirPlay.  More "attachable" machines coming...

    8) Script paneL supports sending text using the special port "98".
      Note: normal Script Machine is port "99".

    9) Revamped support for Hard Branch Events.   They now properly
      support superplaying as Playback Machines do.
      Example: Hard Branch uses SuperPlay time settings to fade out currently
      playing event while segueing into the event following the Branch.

    10) Corrected CHAIN events.  They were not properly loading the
      chained to playlist.  Especially when playing from other than Slot 1.

    11) New Channel Assignment numbers within the Play Buttons now properly
      display when using Unique Channel Assignments

    12) Added NEXT PLAY to RightClick on a Play Slot allowing the user to
      control what the next to play slot will be when using the PLAY AIRPLAY
      DCL (which will play the flashing slot).  This NEXT PLAY function
      will "flash" the selected slot.

    13) Corrected a problem that resulted in the next slot to play to move
      from slot to slot after using an independant slot

    14) Corrected a problem with Auto/Manual modes getting confused and
      operating backwards

    15) Corrected a problem with the Cut and Transition column widths not
      get saved properly

    16) Timers (clock and over/under display) now use transparent background
      making these displays easier to read

    17) VO box (under the transition box) in Auto Slots only displays if
      there is a VO attached to the cut in that slot

    18) Elements in the ASPLAY tab can now be Auditioned and dragged

    19) Added FilmTitle to the displayable Playlist fields

    20) Corrected a problem with how Situational Colors were updating
      relative to the actual "situation" with Auto Slots.  Also now preventing
      Situational Colors and Group Colors choices from being selected at the
      same time.  One or the other, but not both - or both off.

    21) Corrected a problem with how Soft Branches load cuts into the next to
      play slots.   Wasn't replacing - but the playlist was getting properly
      positioned

    22) Corrected a problem when switching betwen Auto and Manual modes when
      a cut was already playing and reloading an upcoming slot and then
      returning back to Auto mode.

    23) Added support for the MANUAL AIRPLAY and AUTO AIRPLAY DCLs

    24) Corrected a problem with the NO REPLAY option that could result
      in skipping one playlist entry

    25) Corrected a problem with the ON PLAYLIST END option that could result
      in being able to load with drag-n-drop (shouldn't be able to) when reaching
      the end of a playlist

  New SETUP->MiscDefaults Switch:   DAY PARTING
    Default is "ON" - DAD uses Start/Kill Times as it always has -
      independantly from Start/Kill Dates.  Times simply indicate what
      hours of any day a cut can play.
    When "OFF" - DAD links the Start Time to the Start Date and the
      Kill Time to the Kill Date to create a date/time to start and
      another date/time to kill a cut

  New utility "XML Ingest" - lives in c:\dad\progs\XMLIngest - removes
    the SCAN_AND_INJECT process from within DAD so it can run on any
    PC on the network without straining any DAD.  Used for automatically
    scanning a folder for an ENPS or RCS formatted XML file and creating
    a DAD playlist from it.  Also supports SMART REFRESH to tell any DAD
    using that playlist (if it already existed) to refresh.

  Shift-F7 now displays the users actively running on the current
    DAD database

  Finalized SMART REFRESH support:
    a) %datadir%\dad\files\REFRESH.ini contains list of workstation names
       you wish to be "smart refresh" recipients
       Example (equal signs required):
		 [Hostnames]
		 FMOnAir=
		 AMonAir=
		 Prod1=
		 Prod2=
       It is HIGHLY recommended that you create a HOSTS file so these names
       will be easily resolvable to IP Addresses.
         for WinXP:  c:\windows\system32\drivers\etc\hosts
         for Win2K:  c:\winnt\system32\drivers\etc\hosts
    b) Use [Defaults] Refresh_File_Type = 0 in the CFI to specify IP addresses
       in the Refresh.ini file instead of Workstation names
    c) Added RightClick->SMART REFRESH to playlist bar and playlist events
    d) Doing a Smart Refresh first saves the current playlist then sends
       refresh message to all address in the refresh.ini file.  If a
       receiving workstation has that playlist in use - it will get
       refreshed (AND ANY CHANGES MADE BY THAT WORKSTATION WILL BE LOST!).
    e) Use this chargeable feature with caution!  It was designed for one
       user to make and save changes and automatically refresh other users
       of that playlist.
    f) Playlist_XML_Ingesters automatically send SMART REFRESH messages
       when an XML creates or updates a playlist

  Multi-Library changes:
    a) Record Machine now uses the MLIB database Drive
       settings to look on drives for CUTS directories.
       If it exists - it will be shown in the CUT Location pull down.
       (in Record Settings).  Example:  The NICK library is set for ALL
       drives in the MLIB database. It will look an ALL drives for CUTS
       and display those letters in the CUT Location field.
    b) LibLoc field in Cut Security now follows the drives set via the
       MLIB database
    c) ReWrite Audio Location Field now follows the drives set via the
       MLIB database

  Internal change to Playlist databases.  Now supports "Smart Chain"
    Chain Field:   YMMDDxxx    Rotate Field:  +1
    Chain Field:   YYMMDDxx    Rotate Field:  +1
    Chain Field:   MMDDxxxx    Rotate Field:  +1
    Chain Field:   DOW         Rotate Field:  +1

    Replaces the date wildcards with today - uses the value in the Rotate
    field to calculate the new playlist to Chain to (tomorrow)

    Example: if today is Nov 14, 2006 - the Chain wildcard YMMDDxyz
    would expand to:   61114xyz       Using Rotate Field: +1
    The Smart Chain playlist would be 61115xyz
    This is currently only available via StreamLine or manually changing
    the playlist databases.  It will eventually be supported within DAD's GUI

  Added NORMALIZE to Record Machines (including Trackers Recorder)

  Record Machines now stop recording if the audio files reaches WAV header
    limits based on format/samplerate/mode.   Limit is generally 2GB which is
    appx 4hours for PCM16/44.1/Stereo.

  LOOP Field for Cuts - T or F (T now loops the cut using Head/Tail - used to
    use HookStart/HookEnd)

  The GPO commands:
    ANY_PGM_START, ANY_PGM_STOP, PGM_START, PGM_STOP now support PBK5 thru PBK16

  Changed the APPEND RECLIST DCL as follows:
    a) New Parameter   /DAYSxxxx
       i.e. APPEND RECLIST /CUT12345 /DAYS135
       adds cut 12345 to the current reclist and activates it for Days 1,3,5
       where Day 1 = Sunday
    b) Default if /DAYS is not specified is all days are activated
       Old default was no days activiated - making the DCL fairly useless

  "PLAY QUAD1" from within QUAD1 is now trapped and ignored

  Full Array size and position now "remembered" after minimizing and/or
    restarting DAD

  Array "Page" selection up/down buttons made larger to make it easier for
    touch screen users to press them

  Playlists now support RightClick->Copy/Cut of all hilited events for
    copy/paste elsewhere in playlists

  Changed Full Screen Search mode to make "Exact Match/Sounds Like"
    choice more obvious

  DoubleClicks on list lines are now configurable on a per machine basis

  RightClick on the DAD desktop to pick a machine now shows it's "state":
          Idle/Empty     Idle/Loaded     Playing

  DAD now handles changing groups without waiting for the PLEASE WAIT to
    close.  Used to leave the user with an empty Library.

  Title Bars of Playback and Quad Machines now indicate "HOOKMODE" when
    that machine is set to Play Hooks (set hookplay PBKx on)

  Lengths of cuts loaded into a machine in Hook Mode now displays the
    hook length instead of the Cut Length

  Modifying/saving cuts after having done a search is now properly saving
    the data modified

  Widened the Record and Kill Date fields in the Record Machines to handle
    the new larger font

  TAMS now properly supports editing recorded TAMS cuts again

  Opening up the Setup->TAMS list no longer takes forever...

  Mini Playlist Modify window is now resizeable

  When dragging a cut in Full Playlist Modify from the Library side (left)
    to the Playlist Side (right) would not display the tenths of seconds
    in the Length field - corrected

  When Closing Full Playlist Modify with the "X" on it's title bar, the
    LOCK file used with LOADED_WARNING = true is now properly deleted.

  Corrected a problem with Fading out using Direct Sound devices.  Wasn't
    fading all the way out.

  Corrected a problem with CUE machines not playing backwards when using
    Direct Sound devices.   Counters weren't displaying correctly either.

  Corrected a problem with Editing and Rewriting 6 channel (surround) cuts.
    Incorrect channel info was being placed in the Library (00 instead of 6)

  PAUSE button graphic "||" on Playback machines no longer disappears after
    using it.

  Corrected problems with editing MPEG Layer 2 32000 audio files.
    Lengths were doubled and waveform graphic wasn't displaying correctly.

  Corrected a problem with displaying the very end of a cut in the Editor
    if it had an EDL (Cuts/Pastes).  Couldn't get all the way to the end.

  Corrected a problem with cuts added via CD Ripping disappearing from the
    library

  Changed the CD Ripper as follows:
    1) Modify After Rip settings now defaults to OFF
    2) Checking RIP ALL TO SINGLE CUT now selects ALL cuts
       specify a cut # on the first track (and UPDATE)
       ALL tracks will then be ripped to that cut #
       There is no support for ripping "multiple selected" cuts to a single
       track. It's RIP ALL to Single Cut.

  Library->Modify->Cut (for Copy Cut) - now utilizes the new longer length
    text fields (was truncating the 60char fields to 24).

  ENPS Library interface changes/corrections:
    1) now has the Search/Edit/Modify buttons again.  This supports cut
       number type ahead as well.
    2) now properly supports drag-n-dropping cuts into an untitled script
       (first one used to not get added to the rundown based playlist)
       Requires using the new ENCOMOSList.exe in c:\dad\progs\ENPS Support
    3) now supports being a CutServer Client (assuming the host DAD that's
       running is a CutServer Client
    4) follows group tabs settings as per Setup->MiscDefaults

  PLAYLIST_SCAN_AND_INJECT_PATH changed to wait 3 minutes at DAD startup
    before processing any existing XML files (was causing startup problems
    processed before DAD was "ready")

  Corrected Trackers Auto-Save function so the voice tracks won't move

  Issuing the DCL:  PLAY PBKx no longer returns a -3 code if that machine
    is already playing.

  The PLAY and PLAY ALL buttons in the Cut/Paste List in the Editor - now
    countdown as most other play buttons within DAD

  New installations of DAD now get the Factory Default settings as per the
    new Column Controller

  Fixed the MAX parameter on the RECORD RECx dcl.  Uses a value in seconds.
    Example:  RECORD REC1 MAX 10
    This starts record REC1 and will stop automatically after 10 seconds

  Library->Purge now indicates how many cuts will be purged from the library

  Corrected a problem with the Library display that would result in a
    hilited cut changing just before clicking - especially after changing
    sort order or group change

  The F10 debug screen has a new checkbox to enable the more extensive debug
    file. This checkbox gets "remembered" between restarts.   There is also
    a View Debug File that opens the current debug file
    c:\dad\logs\%location%.dbf with Notepad.

  New Debug entries added:
        Edit, Purge, InUse, Searches, Reports

  New Verbose Debug mode added.  Enabled in the F10 debug screen
    adds more details about Play and Fades to the debug file

  Debug entries for playlist saving now only display when the result is
    non-zero.  This will reduce the "good errors" entries in the log

  Debug entries for WAV based "underruns" are now referred to as
    Zero Buffers Pending.   These weren't really underruns as they are
    with Digigram based audio.

  Changed the way DAD handles changing from Auto to Manual or Manual to Auto
    modes.  Used to cause inconsistant fades, premature audio endings, etc.

  Corrected a problem with Voice Tracks introduced in 5.1d where voice over
    files were named with only even numbers (.002  .004, etc.)

  Corrected the MODIFY CUT nnnnn STARTTIME 'xxx.x' DCL.  Was invalid - now OK

  Cuts marked for DELETE now show up in Playlists and Buttons as "DELETED"
    (regardless of Start/Kill Date control switches)

  Modified handling of play start/duration and fade start/duration to improve
    audio driver control during changes between auto and manual mode. Currently
    only implemented for “old style” (non-tracker) segues.

  Added the Trash Can to the DAD desktop now accessible in NON-EXPERT mode

  The POSITION field in the PBK deck under the Cut Number and Length now
    shows up to POS: 999 (was only 99)

  Corrected a problem with recording MONO cuts via Timed Record (left only).

  Corrected a problem with bad data getting written to the FileCheck field.
    Changed method to writing Character data into the FileCheck field instead
    of integer data.  Fill_FileCheck utility in c:\dad\progs changed as well.

  Changed how DAD handles a SUPERPLAY when requested at the end of an
    autoLoad event but just before the next cut loads.  Used to ignore the
    Superplay request because DAD wasn't done "ending" the playing event.

  You can now RightClick on the DAD Desktop where the words display:
    "Right Click or double click on background for machine selection"

  Corrected problem with STOPDCL embedded into cuts.   Wasn't executing
    the DCL (cmd) when Segueing

  Corrected a problem with Script Machines displaying HTML files

  Corrected a problem with Recording a Voice Track (with Tracker) out of a
    Rotate Cut

  Asplay now properly logs Rotate Cuts when played from a Quad deck.  The
    actual cut that played is logged - not the Rotate Cut.

  Rotate Cuts now support non-numbered "E" type DCL events

  Added LibLoc and LibName to Asplay database output to support
    playing from Multiple Libraries.  Also increased the size of the Title
    field to 60 characters to match the increase in size in the CUTS.dbf

  LibSend.ini (for Send To Gateway Location support) now supports up to 24
    locations.  Max used to be 12.

  When [Playback] Time_Marker_Stops_Auto_Calc = true and
    [Playback] Auto_Calc = true
    DAD will now recalc scheduled times in a playlist using greater than
    60 minutes per hour (like a PowerGold Clock does).  This will make it
    much easier to overprogram playlist hours.   i.e. 02:68 - not 03:08

  Date Fields now have better validation filters to prevent invalid dates

  Corrected a problem when DAD tries to Chain to a playlist that doesn't
    exist.   Would get DAD into a unplayable state.

  Hex support in Send Text now supports using a small "h".  Used to require
    upper case "H".   I.E. both [h23] and [H23] will now work.

  The STOP PBKx DCL will now properly stop a playing TIMED EVENT

  Added a check box in the Audio Board Definitions screen to allow for enabling
    the padding bit if an audio card (such as ASI6514) requires it.  Some cards
    require this padding bit when recording MPEG at 44.1K

  To make it easier to access popular ENCO utilities, setupDAD-xxx.exe now
    adds to and maintains the following folders in c:\dad\progs
      XMLIngest
      Repeaters (IPRepeater and XMLRepeater)
      Wheatstone (Console and Router)
      SAS (Console and Router)
      Logitek
      DepotMonitor
      ENCORE
      SoundExchange
      CutServer
      UniversalTranslator
    For information on any of these utilities - contact ENCO

  Changed CutServer (1.5b) to ignore backslashes set on the Drive Location
    in CutServer.ini

  Changed CutServer (1.5b) to properly handle DAD's not running in CutServer
    Client mode./

  Corrected DAD to properly reload RES file data when changing from Library
    to CutServer Client mode

  Corrected AudioCVT (now 6.8) to properly handle converting Dolby audio
    files via command line (typically from batch files)

-----------------------------------------------------------------------------
                       DAD 5.1d.283 (Oct.10.06)
-----------------------------------------------------------------------------
  Added "Column Controller" icon ("C" on the title bars of screens with lists)
    This controller allows for much easier setup of columns.
    Factory Defaults are just a few narrow columns of data.
    Note - when adjusting field widths within the new control - press
    the column header after adjusting the width of that header...
    In windows with two lists - touch anywhere in the list you wish to change,
    then press the "C" to open the column control for that list

  Added "Time Remaining" option to Configure AirPlay.  When enabled
    this "backtimer" will display the over/under times for the currently
    playing hour.  Will display the total time of other hours within a
    playlist.   Depends on the use of hourly Time Markers within the playlist.

  Added FilmTitle and Composer fields to the line display choices in
    Configure MasterLog

  Added the ability to drag-n-drop from the Record Machine Cut Number field
    to an Array button, playlist position, p_play, etc.

  Added two report choices to Library->Reports:  Playlist2 and Asplay2
    These use PLIST2.RPG and ASPLAY2.RPG allowing for two kinds of each
    reports.  The RPG's provided show the use of 'filtering' to report
    just commercials (as an example)

  Added support for Measurement Computing's Universal Library for GPI/GPO
    boards and USB devices.
    Follow the normal installation procedures for the card/device and use
    INSTACAL (on Measurement Computings Install CD) to setup the card/device
       Use this setting in the DAD.CFI
           [External_Devices]
           Remote=Universal
    Note the GPO_GPI setting is then ignored.   DAD gets the I/O info
    from Instacal.   c:\dad\drivers\gpi\DADPIO not used in this mode.
    This also supports multiple devices - regardless of device type.

  WAV buffer servicing is now a background process.  Should dramatically
    improve the effects of foreground activity (GUI, file opens, start, stop
    events, etc.) when using WAV based audio devices.

  Revamped Multi-Library support.  Added messaging to allow other ENCO apps
    to support Multi-Libraries (CutServer, Gateway, DropBox and AudioCVT).

  Separated Quick and SlowFull Search input fields because Quick Search can not
    search within specific fields - always searches within all Quick search fields

  Improved QUICK SEARCH to allow for "phrase" searching.  Used to be an
    search of individual words using OR logic.

  Modified Quick Search Rebuilding to properly support Multilple Libraries.
    Be sure to use the new QUICK SEARCH checkbox in Setup->Libraries to activate
    Quick Search for any and all libraries you wish Quick Search to work in.

  Rebuild now does a rebuild of the Quick Search database/index if Unique
    Access is achieved

  Rebuild now creates LOGS of this form: MMDDYY.RBL in \dad\logs
    New Command line option allows controlling the name:
    Output=MMDDYY   or MMDDYYYY  or YYYYMMDD  which all create RBL log files
    in \dad\logs

  Rebuild now backs up the MLIB (multi-library) files

  When DAD creates a CFI for a new %location% that never had a CFI, rather than
    using ENCO coded defaults, DAD now copies the DAD.CFI (from %datadir%\dad\files)
    to %datadir%\dad\files\%location%.CFI.   This will allow users to control what
    defaults get set in the new CFI.

  New CFI options:
    [Playlist]
    Rotate_Validation = True or False    (default is FALSE)
    When True - DAD will validate all ROTATE cuts.  Could really slow down
    playlist loading when using lots of ROTATE cuts.

    [Library]
    ALTCUT_LENGTH = x
    Where X is the EXACT length that the ALTCUT field must be when modified
    by Library/Add, Library/Modify (or any RightClick->Modify), Record Machine
    Data.  If less than or greater than X, an error message is displayed.
    ALTCUT_LENGTH = 0 (the default) is no control at all.

    [Defaults]
    Duration_Display_Style = 24MODULO or 99HOURS or 99MINUTES
      defaults is 99HOURS.   Effects how Recalculating scheduled times get
      done.
      99HOURS - allows times like 23:60, 24:12, 25:03
      99MINUTES - won't allow hours larger than 23:
      24MODULO - rolls the clock from 23: to 00: instead of to 24:

    [Playback]
    Time_Marker_Stops_Auto_Calc = True or False
      False is the default.  Time Markers have no effect on recalculating
      scheduled times in a playlist.   When set to TRUE - Time Markers will
      act like Branch Events to stop the calculations - allowing times to
      "restart" whenever a Time Marker occurs.

  New DCL's:
    RETRIEVE [ ]  
    Allows a user to retrieve any field of data for a specified cut.  Useful
    for automation controllers of DAD.
    Examples:
        Retrieve D CUTS 12345 TITLE
        Retrieve 12345 ARTIST

  When Picking any Machine now - the placement will be the last place it was
    closed - rather than where the Picker icons are

  Added more information to the Debug file at DAD Startup.

  Changed AirPlay timers to both support these:
    1) Play Time CountDown
    2) Play Time CountUp
    3) Talk Time CountDown
    4) Scheduled Air Time
    5) Actual Calculated Air Time

  AirPlay Play Buttons now show a small number indicating the Channel
    Assigned to that Button

  After pressing any AirPlay PLAY button - the "focus" is removed from that
    button so accidental re-pressing is eliminated (i.e. Space Bar, etc.)

  Record Machine PLAY button now counts down when playing.  Ideal for use
    in playing a recorded element directly to air.

  Improved the CD Ripper to handle CD's that have huge "extra data" that
    gets used to fill the ripped cuts script (.txt) files

  CD Ripper now displays the DISCID from the CD Table Of Contents (TOC)
    Useful for future identification and selection of duplicate CD ID's

  Changes to StreamLine:
    a) Soft Branches coming from Powergold Clocks are now FORWARD ONLY
    b) Debug and F10 screens now display more info on Populating Cuts Table
    c) Now supports using numeric Directive_Commands to control the
       Segue type used in ingesting XML playlists from Powergold.
       The number corresponds to the ICON in setup->Cue&AutomationDefaults
    d) XML's created by DAD (from updating a playlist) use space trimmed
       fields and the directive_commands support the segue type numerics,
       and XML "special characters" are expanded (& = &)
    e) Places DAD in Auto_Calc = TRUE mode for all playlist modifications

  Library listing now displays the GROUP field with the group color as a
    background color to make it easier to identify things

  Corrected the NEXT AIRPLAY DCL to properly load reload the slot being
    dumped

  Corrected a problem with Soft Branch Events in AirPlay that had "Segue"
    or "Autoplay" transitions on them.
    Was making the Soft Branch act as a Hard Branch.

  Corrected a problem in AirPlay when dragging a cut from the Library into an
    empty playlist

  Corrected a reversal of VU meters when using 44.1K audio with the Axia
    IP driver

  Corrected a problem related to using the latest ASI 6000 boards and
    new combo driver

  Corrected a problem with saving the Cut Location value in a Timed
    Record List

  Corrected a problem with Over Editor button labels (SET, UNDO, NEXT, COPY)

  Corrected a problem with losing Playback Machine buttons when stretching
    and shrinking

  Corrected a problem with Active/Kill Times not getting reset when a cut
    is overwritten (re-recorded, etc.)

  Corrected a problem with importing a DAD playlist DBF (was creating 0
    records)

  Corrected a problem with nested Rotate Cuts.  DAD once again supports
    three levels of nesting for Rotate Cuts.

  Minimizing the Array panel with the "_" button on the title bar no
    longer forces the re-opening of Array to page 1 with a reinitializing
    of the button titles.

  Assignments to Arrays using the ASSIGN button now properly save button
    assignments

  Spawning a 3rd party editor from the EDIT button on a RECORD machine now works
    [RECORD1]
    EDIT=C:\Program Files\Adobe\Audition 1.5\Audition.exe %1
    EDIT_DESC=ADOBE

  Corrected MODIFY DATA in an active RECORD MACHINE - was pulling the wrong
    cut data into the text fields.

  Shift-F2 GPI/GPO status popup is now "modal-less" - you can control other
    windows while this popup is displayed.

  Changed the Search Screen to make the "Sounds Like" option more obvious
    when not doing an "Exact Match" search

  The LOG GPI x 'ontext' 'offtext' DCL now saves the 'text' string in both
    the TITLE and COMMENT fields in the ASPLAY databases

  The LOG TEXT 'text' DCL now saves 'text' in both the TITLE and COMMENT fields
    in the ASPLAY databases

  Updated the c:\dad\files\ENCO.DTD xml descriptor table for DAD databases

  Updated the INJECT/EXTRACT XML PLAYLIST dcl's to properly support the
    latest database layouts

  Remapped the machine numbers so pre-5.1 security files will work without
    modification

  SetupDAD-xxx.exe now creates a "SERVER" folder beneath C:\DAD\FILES that
    contains the proper folders/files needed on a DAD Server (i.e. F:\DAD)
    Files for LOCAL and NETWORK modes provided like user setups, CFI files,
    StreamLine.ini, etc.

-----------------------------------------------------------------------------
                       DAD 5.1c (Jul.7.06)
-----------------------------------------------------------------------------
  Added support for Branch Events in AirPlay (yay)

  Added Branch, Chain and DCL events to StreamLine injecting of Powergold
    playlists.  Also Playlist injecting is now done by the first DAD in a
    network to gain exclusive control of the XML file from Powergold.

  Added "?" and "X" buttons to the Full Screen Playlist Modify screen for
    online help and window closing

  Changed the "-" (minimize) buttons to "X" (close) on the title bars of
    Library, Setup and Timed Record screens

  LibLoc and LibName processing changed to allow playlists created on
    MultiLibary aware systems to properly run in non-MultiLibrary DADs

  Setup->Libraries->LoadLibrary now correctly process paths to DBF's

  Corrected a problem with cancelling a PLEASE WAIT for Rewrite Audio

  Corrected the button labeling for the MOVE/PUT functions in Mini Playlist
    Modifier

  Extended Type Ahead support in Library displays to handle beyond 14045 cuts

  Changed StreamLine ingesting of PowerGold XML logs to create playlists
    named:  YMMDDxxx - where xxx Station ID set in StreamLine.ini
    example:   60629BLR

    Also changed this process so that only the first DAD in a Network to
    gain exclusive access to the XML file will do the ingesting

  Corrected a problem with VU meters for MPEG files created by AudioCVT for
    systems running DirectX

  Corrected a problem the the NEXT/PREV functions in button security (Sh-F9)

  Full Array size and position now "remembered" in the User Setup

  Changed the Search Screen to make the primary Search Button be "Quick".
    Changed the text of normal SEARCH to "Slow Full Search" to discourage
    users from using it

  The new CUT ID button in the CD Ripper now follows the REC4 settings for
    generating a new cut number

  Added new fields FilmTitle and Composer to 2nd/3rd line choice lists for
    PBKs and AirPlay

-----------------------------------------------------------------------------
                       DAD 5.1b.168 (Jun.16.06)
-----------------------------------------------------------------------------
  New DCLs:
    INSTATRIM RANGE   []
      Head/Tail trims a range of cuts to the specified dB level

    GATEWAY SCAN RULE #
      This tells DAD to tell Gateway to Scan the specified rule.
      Requires the LibSend.ini described below be used.
      Use the Rule # as listed in the Gateway Scanner Rule listing

  New "Send To Location" feature added to Library.  Allows user to send one
    or more cuts to a Gateway Location by sending a request to a Gateway.
    Transfers and status all handled by Gateway.
    Use %datadir%\dad\files\LibSend.ini to control this new feature.
    A sample LibSend.ini is provided in C:\dad\files.
    User access is via Library->RightClick->SendToLocation->location

  Added these fields to the Library (cuts database):
        FilmTitle  - 60 characters
        Composer   - 60 characters
        SubGroup   - 30 characters

  New Rebuild (c:\dad\progs\rebuild.exe) required for this version to run
    properly.  A Unique Rebuild is required when updating to this version
    from ANY other version of DAD.  Added support for new fields.

  You can now drag a cut into one of the Library Group Tabs - moving it to
    that "group"

  ENPS interface now uses the new Library instead of the Legacy library

  Eliminated the Legacy Library and Playlist displays.  Library button is no
    longer a toggle between Lib2000 and Library.
    CFI setting for [Playback] list_style = 1 and is no longer changeable.

  Changed the legacy "X" to minimize a DAD machine to the windows standard
    "-" on the machine title bars

  Added a "?" to all machine title bars to bring up the online "help"
    screen for that machine or topic

  Added a title bar to the Setup Screen - allow it to be moved
    also has a "?" help button and "-" minimizer

  Added the modernized buttons initially added in 5.1a to the rest of the
    machines and popups in DAD

  Added Array->RightClick->SetFont - so the user can choose any Font
    they wish from the standard Windows Font faces, sizes, attributes

  Changed the new modernized fields to support Unicode (international)

  CD Ripper changes/improvements:
    a) When specifying a Cut Number, a new "Warning" field indicates that a cut
    will be added or overwritten.  If a series of tracks are selected for
    ripping, unused cut numbers will be auto generated using the first cut
    specified.  If this CFI entry is used:
       [RECORD]
       Create_Cut_On_Next_Record = TRUE
    The Cuts will be created in the Library instantly, allocating them
    so other can't get them.  Title is "waiting to be ripped" till completed.
    If the CD is ejected (or DAD exited) before the rips complete, those empty
    entries are removed from the library.

    b) Added a CUTID button to generate an available cut number to use

    c) Added a GROUP button to give the user a list of current groups

    d) When Normalizing to a Network Location.  DAD will rip to the local drive,
      do the normalizing locally, then use EASYCOPY settings to move the
      audio file to the network.  Properly supports MPEG as well.

    e) Added these fields to the interface:
        Album
        FilmTitle
        Composer
        SubGroup

    f) Added "Rip All to Single Cut" option to allow an entire CD to get ripped
      into one cut.  Intertrack spacing is 0 seconds.

    g) Now using new and longer fields.  Was truncated to the old 24 char
       lengths (Title, etc.)

  Changed RightClick on Playback NEXT buttons to allow for changing the
    transition of the Playback Slot cut - playing or not.

  Corrected the defaults on CD RIP installations to assume high speed CD ROM's
    Read Speed: 399
    No Jitter Control

  Minor change to Remaining Time display on PBK's (wasn't fitting well)

  Changed Setup-CFG&Readm changed to Setup->CFI&Readme

  Corrected an AirPlay "swap" cuts problem that would result in a duplication
    of swapped cuts

  Corrected a problem with the AirPlay Change/Return butons not being
    displayable after turning them off and then back on

  Readonly Libraries (part of multi-lib support) no longer allow RightClick
    copy/move of cuts from other libraries

  Corrected a problem with the PLAY button in Library->Modify screen

  Corrected a problem with Send Text that could effect the termination
    character of serial transmissions

  ENCOMOSListener now supports WatchDog

  Corrected APPEND in Record Machines in Mono mode.  Was defaulting to
    LEFT channel only regardless of channel assignment.

  Corrected a problem introduced in 5.1a that prevents the Broadcast Tools
    SRC32 GPI/O device from working properly.

  Warning to users loading existing cuts into REC Machine but not intending
    to re-record it.  If the Record is set to record to drive X and the
    existing cut was from drive Y, the process of loading the cut into that
    recorded MUST result in the cut being deleted (for now anyway).
    Be careful!

  Configuration Settings for PBK5-PBK16 are now properly stored and remembered

  Setup->CFG&ReadMe changed to CFI&ReadMe

  Playlist_Refresh_Pattern_Matching in CFI/CFG is now ignored.
     DAD will use the new GUID based refresh introduced in 5.1a

  Added StreamLine "populate" entries to the Debug log (if enabled)
    and changed StreamLine playlist injection to use Cue & Automation
    default Segue type

  Dramatically improved DirectX support of VU meters for playing and
    recording

  Cue Machines now properly trigger AUD_START and PGM_START GPO events

  Corrected the logic of the "Use All Groups" and "Use Exact Match"
    checkboxes in the new Search Screens (logic was backwards)

  Updates to text in the Agency field in ReWrite Audio now properly saved

  Full Screen Playlist Modify now supports hiliting multiple events in the
    playlist (right) side.   Handy for deleting lots of events at once.

  DAD now properly handles the shutdown of CutServer or the forced
    disconnection of a CutServer client

  Corrected the "MANUAL MLOG" dcl to properly place MasterLog into Manual

  Updated BRICK application to support the new fields

  Zoom-In and Zoom-Out in the Editor now supports these 10 levels
        1, 2, 5, 10, 20, 40, 80, 160, 320, 640 seconds

  Corrected a problem with refreshing a playlist when BackTime display enabled

  Corrected a problem with NEXT_VO_TEXT (CFI setting) - was being ignored

  Internal note: using background thread for check

  Corrected a problem with Threshold Level based recording - was triggering
    all the time regardless of input level

-----------------------------------------------------------------------------
                       DAD 5.1a.103 (Apr.13.06)
-----------------------------------------------------------------------------
  Note:  Updating to 5.1a requires ALL workstations on a DAD network to be
    updated to 5.1a   Mixing of pre-51a workstations is NOT supported.
    A UNIQUE REBUILD is mandatory as well.

  Modernized Buttons on PlayBack, Record and Full Array machines.
    More coming soon...

  New Rebuild (c:\dad\progs\rebuild.exe) required for this version to run
    properly.  A Unique Rebuild is required when updating to this version
    from ANY other version of DAD.  Rebuild now supports the output=filename
    parameter to create an appended log of rebuild activity.
    No spaces allowed in filename.  Corrected a slowness problem in
    non-exclusive mode created in 5.0e
    Messages and algorithms improved to handle multilibrary and fields
    new to 5.1a

  Initial support for "StreamLine" - automagic interface to PowerGold Music
    scheduling and Wicks Virtual Traffic scheduling systems

  New Database fields:
        STARTDCL - A to Z executes A-Z.cmd,  * executes cutnum.cmd
        STOPDCL - A to Z executes A-Z.cmd,  * executes cutnum.cmd
        LOOP - T or F (T loops the cut using HookStart/HookEnd)
        DEFTRANS - A N L S
        DOW - checkboxes for each day of week to allow play
        URL - any valid url - displays in Script Machine (including audition)
        FILECHECK - bitmapped data to tell DAD when to look for SLT/EDL files

  Increased the following DAD fields to 60 characters
    Title, Artist, Album, Outcue, Agency, Usedef, Producer, Billboard

  Search screens changed to add boolean multi-field searches

  Playlist entries now have a GUID field (globally unique identifier) meaning
    each entry in a playlist has a unique "stamp".

  DCL additions/changes:
    1) SET DEFAULT AUTOMATION  [seguetype] [duration]
       examples: set default automation A
                 set default automation S 2
                 set default automation S 5 2.5

    2) PLAYBACK_AUTO_CALC = true | false
      default is false.  when true, adding/inserting elements into a
      playlist will automatically recalculate Scheduled Times

    3) REFRESH PBKx now utilitizes the new GUID field to help position it
      as closely to where it was before the refresh.
      Playlist_Refresh_Pattern_Matching in CFI/CFG must be set to False
      for this new GUID based refresh to work.

    4) BACKUP FILES now properly backs up new style (Asplay_Style = 1)
      asplay files

    5) APPEND CUT   [transition]
      like LOAD CUT dcl, but adds to the bottom of a playlist instead of
      inserting at "next" position as LOAD CUT does.

  Corrected a problem with Rebuild 5.0e that could cause it to be
    very slow when running in non-exclusive mode

  Corrected a problem with old style Asplay logs not purging
    i.e. Asplay_Logging_Style = 0

  Corrected a problem with Digigram based DAD's improperly reading MPEG
    bitrates

  Corrected a problem with Rotate cuts not rotating if one of the audio
    cuts within the rotate was expired or inactive

  If a ROTATE or PLAYLIST cut contains nothing but expired cuts, they will
    themselves display as INVALID ROTATOR

  Changed DAD.CFG defaults:
    VU_Meter_Mode = Stereo
    Editor_Color_DataForeG = Black
    Editor_Color_ZeroVU = Red

  Added support for Time Zones that don't have full hour offsets from GMT
    India for example is +5:30

  Corrected a problem with Data drive failures in Auto Failover mode.
    Also changed Record Machines to properly handle a failed over Audio drive.

  Library->Reports->Asplay listing now has no limit on the number of files
    listed (was 150) and the list is now sorted alphabetically.

  Drag-N-Drop into a playlist now supports these "held keys":
    drag with no keys uses Cue&Automation default transition
    drag with Shift Key - uses a Segue transition
    drag with ctL Key - uses a autoLoad transition
    drag with Alt Key - uses an Autoplay transition

  Drag-N-Drop into the Library now supports "deep" source folders.

  BackTime Display in Playback machines now properly includes the duration
    of the cut in the Play Slot

  Added to CutServer INI (1.3h)
    [Database]
    Aux Location =  | 
    If not specified it defaults to the value specified in Location
    Also, NEXT CUT is determined from the live network database with
    dramatic speed improvements as well.

  CutServer 1.4a now:
    a) supports millisecond for ShutDown Process Delay
    b) reconnects are no longer allowed while shutting down
    c) Events.Dat are no longer processed at startup (actually deleting it
       at close down)
    d) Aux Location now supports drive and path  (i.e. f:\data)
    e) Supports Multiple Libraries

  LOAD CUT QUADx nnnnn - now properly supports the EZ-QUAD module

  Corrected a problem in Tracker that would cut out the playing of the outro
    cut at the fade markers instead of the tail when recording a voice track
    with record monitor OFF.

  Corrected a similar problem in Tracker that would not properly use a
    LEVEL adjustment (cut based) when doing fades

  Send Text Rules now supports the [ALTCUT] field
  Send Text Rules now supports the [LineID] playlist field (when played from
    a playlist)
  Send Text Rules now supports the [Owner] field to send the Playback Machine
    number information

  Send Text Rules now properly support multinational characters (like
    Japanese)

  The default End of Transmission sequence has been /*EOT*/
    Users can now change the default by appending the desired string
    on the X_IO line in the [Send_Text] section of the DAD.CFI file
    ex:   A_IO = 2044 127.0.0.1 ^M

  DAD.CFG files are now DAD.CFI files.   The first time you run 5.1a
    DAD will convert your CFG to a CFI file.
    If the CFG was named DAD.CFG, the resulting INI file will be DAD.CFI
    and the DAD.CFG will no longer be used.   The CFI now has "sections",
    supports comments, and will soon have an external wizard to allow
    easier maintenance and changes following the standard windows INI
    format.  Settings that used to have "quoted" strings are no longer quoted.
    CFG Example:  Send_Text_Rules = A "rule.txt"
    CFI Equivalent:  [Send_Text]
                     Rules = A rule.txt
    Things more consistant. No more 0/1, on/off.  All these are True/False
    Setup->Cfg&Readme->DAD.CFI now greyed out while DAD is saving the CFI

  New DAD.CFI directives:
    1) [RECORD] EDIT_DELAY = 
       allows the user to specify how many seconds to wait after STOPPING
       a recording before the EDIT button can be pushed.

    2) [Defaults]
       LibLoc = drive:    (example:   F:)
       LibName = name     (example:   Cuts)
         allows multi-library users to specify a default startup library

  Added access to the new LOC1, LOC2, LOC3 fields in Setup->Groups->Edit

  Cosemetic change to PBK play slot fields so data from one field
    doesn't bleed into another (especially when using Japanese fonts)

  Changed CUT_LOCATION = NORMAL | ALTCUT to:
          CUT_LOCATION = LIBLOC | GROUPLOC | ALTCUT
      When LIBLOC (the default), DAD plays cuts as always using Cut number,
        Location and EXT.  There is no looking for alternate locations.
      When GROUPLOC, DAD plays cuts as always using Cut number, Location and
         EXT.  If the cut is not found, DAD looks for cut/ext in the
         LOC1, LOC2, LOC3 fields of the group that cut is in.
      When ALTCUT, DAD plays cuts using full path and filename specified
         in the AltCut field. If the cut is not found, DAD looks for the
         file specified in the ALTCUT field but, in the LOC1, LOC2, LOC3
         fields of the group that cut is in.

  Added access to the LineID field of a playlist entry via
    RightClick->MoreInfo.   Press the LineID button to save changes to the
    LineID field

  Added two new transition types to Setup->Cue&AutomationDefaults
    Cold-FadeIn,  FadeOut->Cold.  Both without overlaps.

  The TIME field in playlist modify now updates properly as the scheduled
    time is changed for an entry

  Editor->Rewrite Audio now saves the state of the Generate CutID Method
    so the user doesn't have to reset it each time Rewrite is used

  Added security support to SETUP->LIBRARIES

  Save Playlist no longer allows an empty filename

  Sending PAD data to IBOC exciters (importers) now trims trailing spaces
    from DAD fields before getting sent

  Playback State XML data is now trimmed to remove trailing spaces

  Added "Hooks" to Audition buttons in AirPlay

  AirPlay Multi-View mode is now stored as part of the workstation CFI - used
    to be part of the User Setup

  Corrected Superplay FadeOut-FullIn transition - was doing FadeOut/FadeIn

  Changed the formulas DAD uses for doing Linear and Log fades.  Linear fade
    are now truly linear dB fades and Log fades are truly log dB fades/
    Added [DEFAULTS] Fade_Min_DB setting to allow the minimum level to be set
    default is -60.00

  New DAD command line options:
    DAD -NoDemoTimer  - stops the Time Remaining window from displaying for
                        keys programmed to expire on a specific date
    DAD -clrWinDefs     clears Windows positions and sizes
    DAD -clrColDefs     clears Column order and widths
    note that DAD -clrreg   still clears all DAD registry entries

  Configuration Settings for PBK5-PBK16 are now stored and remembered
    so they don't have to be reset each time DAD starts

  DAD will now remember what Array Page the user was on when the setup was
    saved.  So recalling a setup will return all Arrays to the saved page

  DAD now properly sorts a RECLIST by Start Time - was sorting by End Time
    if there were cuts that cross midnight

  The CD Ripper now properly sets bitrates when using MPEG so that Tracking
    these ripped cuts sets the recorder to the right bitrate

  Text loaded into P_PLAY buttons is now "trimmed" to eliminate trailing space

  Demo Mode popup now describes the demo limitations and allows the user
    to cancel before actually running in demo mode (in case a key was simply
    forgotten to be used)

  Machines displayed in NON-EXPERT mode lowered a few pixels to allow for
    "enhanced" WinXP modes to fit better

  \dad\progs:
    Inject.exe - now deletes the EXT file after successful injection
    Extract.exe - Export files created wherever this utility is run
    TakeMe.exe - allows user to convert a DAD database to and from
                 Pre 5.1a (old) and Post 5.1a (new).
        TakeMe Forwards  d:\dad\files\cuts.dbf d:\dad\files\newcuts.dbf
        TakeMe Backwards d:\dad\files\cuts.dbf d:\dad\files\oldcuts.dbf
    KeyView.exe - properly displays the status of WatchDog for Gateway
       and DropBox settings
    Fill_FileCheck.exe [LibLoc] [LibPath LibName]
       sets the new FileCheck field based on the existance of EDL's and SLT's
       for each cut.   Defaults to CUTS.dbf in the current drive:\dad\files.
       example: Fill_FileCheck      // updates current drive:\dad\files\cuts.dbf
                File_FileCheck D:   // updates d:\dad\files\cuts.dbf
                File_FileCheck F: Archive Data // updates f:\archive\data.dbf
       LibPath and LibName must be specified together and requires LibLoc
       This utility is required for sites using EDL's and/or SLT's

  Added the ability for AudioCVT to Scan and process "message" files allowing
    a user to get audio file conversions done independant of Gateway or DAD.

  Internal changes to security key processing to allow for better
    TIME TO PLAY results

-----------------------------------------------------------------------------
                       DAD 5.0d.346 (Dec.14.05)
-----------------------------------------------------------------------------
  Auto Mode on all automation machines will now utilize the color GREEN
    instead of YELLOW.   Manual mode will continue to be RED.  Yellow
    is now being used for the new LIVE ASSIST mode.  These colors now
    better match the traffic light concept.  Green-GO, Yellow-TakeCare,
    Red-STOP.

  Revamped Multi-Library interface.  There is now a MLIB database that
    keeps track of all Libraries to be used.  There is now the ability
    to have a READONLY library (DVD based perhaps), libraries that can be
    hidden from VIEW (command cut libraries for example).  A library can
    have a list of valid audio drives specific to that library.  The
    path to the library database can be specified as well.

    - Exception reports are now Multi-Library aware.
    - Record Machine setup is now Multi-Library aware.
    - View Library popup now indicates the current library
    - Rotate Cuts are now Multi-Library aware.
    - Rebuild runs for each database in \dad\files\mlib.dbf
    - Block copies/moves with Library->RightClick->Copy/Move spawns a new
      window to do the copy/move providing progress, etc.

  Added support for PADapult.  Takes XML info from any automation system
    (including DAD), via file or IP - reformats the data based on user
    formatted rules and sends the data via IP or serial to up to 6
    destinations.   Chargeable product.

  DAD.CFG changes:
    1) PLAYLIST_BACKUP = TRUE      (default is FALSE)
      When set to TRUE, when saving over an existing playlist,
      DAD will rename the existing playlist to:
        \dad\files\playlist\backup\PLAYLISTNAME.mmdd-hhmmss-%location%
      This can be used as an audit trail of playlist changes.

    2) CUT_LOCATION = NORMAL | ALTCUT
      When NORMAL (default), DAD plays cuts as always using Cut number,
      Location and EXT.
      When ALTCUT, DAD plays cuts using full path and filename specified
      in the AltCut field.  No EDL, TXT, SLT or editor support in this mode.

    3) CAP = TRUE | FALSE
      Content Adaptive Processing.  Chargeable product.
      Default is False.  When true with CAP enabled in the key
      DAD will use the c:\dad\files\CAP.ini file to send preset info to an
      IP connected Omnia Processor based on what group and machine DAD is
      playing.  Example: Songs can use Preset 1, Commercials preset 4, etc.
      When DAD is Idle, a default preset is sent.  See the example CAP.ini
      provided.

  New fields added to Groups.dbf
    Loc1, Loc2, Loc3  - each 50 characters.   Allows the user to specify
    where to look for audio if a cut in this group can't be found in it's
    normal location. These Loc fields can be drives, paths, or UNC's
    example:  j:     h:\archive     \\admin\vol1\audio
    If nothing specified for the group, the ALL group LOC's are checked.
    Must be used "in order" - i.e. you can't use Loc2 unless you use Loc1
    first.

  Added new functions (metering, compression, pcm24, etc.) to the new
    mixer controls for manually specifying audio board capabilities
    within DAD.

  Added more options to the Audio MIXER controls in
    Setup/ConfigAudio/AudioBoardDefinitions
    (used to be called MixerControlAssignment)
    New options: MultiChannel, Emulate VUs, MPEG, MP3, Dolby, PCM24
    allows the user to tell DAD what their audio card supports.

  New Transition type #6 added.  A form of cross-fade - outgoing event
    fades out and the incoming event fades in - but the incoming event
    doesn't start until the outgoing fade is completed.   The normal
    crossfade has the incoming starting when the outgoing starts fading.

  Preliminary support for using Rotate Cuts as Overs has been added.

  AirPlay items:
   1) With "Query Auto Drop" set to off and "Auto Drop" set to on,
    the default for draggin a cut into an auto slot is now INSERT
    (used to default to REPLACE)
   2) When playing in AUTO mode, the FINGER button turns into a FADEOUT
    button allowing the user to Fadeout and stop an AUTO playing slot.
   3) New "LIVE ASSIST" mode added to Auto Mode.  When playing in AUTO mode,
    if the user presses another slot play button, LIVE ASSIST mode is
    entered (AUTO button turns to LIVE).  Both slots are now playing.
    The user can Fadeout either slot or let whichever slot finishes last
    to continue back into AUTO mode - transitioning into the appropriate
    slot.
    4) Pacer Bar colors changed:
       Auto Mode - Green
       Live Assist Mode - Yellow
       Manual Mode - Red
    5) RightClick->Unload on an Auto Slot button is now greyed out
    6) Corrected SUPERPLAY DCL.  Wasn't allowing a superplayed slot to
       be stopped.
    7) Asplay screen now displays the actual length played - not the
       scheduled length
    8) Added Semi-Independant mode to Indep slots
       Playing a Semi-Indep slot places any Auto Slots into Live Assist mode
       i.e. stopping Automation mode and allowing the user to take over
       (i.e. live assisting things).  Auto Slot turns red.
    9) Predictive indicators added to the playlist display to suggest
       where upcoming cuts in the playlist will end up (slot wise)
   10) Audition button can now be tri-state or dual-state.
       Dual State toggles an audition play/stop
       Tri-State toggles playhead/playtail/stop
   11) No Replay checkbox added to config - flags a cut dragged into a
       Independant slot so that it won't get loaded into an Auto Slot
   12) Focus behavior of AirPlay changed to allow other windows to open
       properly (library for example)
   13) RightClick menu for Insert now grays out items that don't apply

  In Full Screen Playlist Modify, saving a playlist that's currently
    loaded into some automation machine would result in a REFRESH popup.
    This message was getting covered by the Playlist Modify screen.
    It now stays on top and in focus till answered.

  Additional support for "self-referencing" DCL's added.  Example:
    unload pbk1 can now run from within PBK1.

  Corrected a problem with Playback Machines in Change/Return mode when
    inserting an event somewhere below the "next" event.  The playlist
    would incorrectly "jump" up to the next event.  It now stays at the
    insertion point.  The user can use the RETURN button to get back to the
    next event - or wait for DAD to jump there from automation.  This
    corrects a similar issue in AirPlay when rearranging events in the
    playlist.

  Cosmetic changes made to the Playlist SCAN report. Playlist name now
    properly appears in the report title.   The "Invalid Between - " text now
    only displays if a cut in a playlist actually has a invalid start or end
    date.

  There are machines in DAD (playbacks, arrays, p_plays, etc.) that allow
    cuts to come from other DAD libraries (multi-library).   When user
    setups, playlist, etc. get into a DAD from some other system (like from
    a network DAD to a local DAD), these library definitions (LibLoc/LibName)
    usually transfer unaltered and may be invalid for the destination machine.
    DAD will now first attempt to find the cut from the specified LibLoc.
    If it can't find it there (possibly because that location isn't even
    available, DAD will then try to find the cut in the current DEFAULT
    library (C: for example if running locally from C:).

  Rotate Cuts that live in one library that contain cuts that live in
    another library now play correctly.

  Play button counters no longer display wrapped line decimal seconds if
    there's no room (length greater than 1 hour).

  Corrected a problem with playing Rotate Cuts and Rotate Events in AirPlay.

  Corrected a problem with Purging Asplay databases.

  Corrected a problem with dragging cuts from the Library panel of AirPlay
    into a playlist or play slots.  In some circumstances the wrong cut
    could end up being dragged.

  In some configurations, the Recorder Parameters were not allowing the
    sample rate to be changed - this has been corrected.

  Correction made to the new Mini Array Preset feature added in 5.0c:
    The Mini-arry/ASSIGN button label now follows the
    SETUP/MISCDefaults/Preset switch settings (used to require a DAD restart)

  Corrected a VU meter display problem with Digigram cards.  The peak
    indicators were not functioning correctly so clipped audio could be
    improperly recorded into DAD.

  DAD, when running as a CutServer client, was not properly sending
    Windows Messages (that some 3rd party applications listen for).  OK now.

  Debug Log changes:
    1) 3 decimal seconds added to timestamp for finer timing tracking
    2) added special entries for playlist saving process
    3) added special entry for reporting Playback Auto/Man states
    4) Timestamp and Cut Number added to Time to Play and
       Time to Complete Playback entries
    5) added entries for Play, Stop, Next buttons for PBK/AirPlay
    6) added AirPlay slot number details
    7) added Login/Logout entries
    8) added User Setup change entries

  Tracker AutoSave checkbox state is now saved in the .RES file so it is
    remembered from DAD session to session.   Used to clear each time
    DAD was started.  Note that Tracker->AutoSave saves the Tracker changes
    (delays, positions, etc.) only and does NOT save the PLAYLIST itself!

  Corrected an error in processing transitions in MANUAL mode.  Under
    some circumstances after processing a Soft Branch, an automation
    machine could have ignored the MANUAL condition and continue processing
    transitions.

  Added a "retry" in the Playlist Save process.  In some conditions, DAD
    could not save over an existing playlist due to server latency resulting
    in a empty playlist.  Changed the way a buffer was being used in DAD
    to better handle lots of quick saves of the same playlist that also
    sometimes resulted in empty playlists.

  Corrected a problem with Auto Record Threshold levels on Digigram based
    machines.  Wasn't working after you entered the record setup screen.

  Added Speaker Icons in Library and Playlists to support multichannel
    (surround) audio files (black background).
    Also added Magenta icons for PCM24 files.

  Corrected Modify->Format->UpdateRecord to properly change the Mode of a file
    when multi-channels (i.e. Mode=6).  DAD was setting mode to 0.

  Changed Library->Modify->Copy now defaults the destination drive to the
    source drive

  Corrected a problem with Playlist Merging (based on time) that resulted
    in double comments at the start of the merged playlist and dropped events
    at the end.

  Library->RightClick->Move/Copy now warns user if the destination cut
    already exists - and allows for an overwrite

  Corrected an error in the Segue Editor when creating a voice over. In some
   cases a VO that was just created would not play back in a playlist.

  Made additional changes to Playback State to better handle chaining to
    playlists that have comments at the top

  Library->RightClick->Edit now opens the normal DAD editor regardless of
    how Libary_Edit_Desc is configured

  \dad\progs now contains:
    Inject.exe
      syntax: Inject [drive:\path\] [/O] [/L=location] [/C=datadrive]
    Extract.exe
      syntax: Extract  [/C=datadrive] [/V]

    InjectPlaylist.exe
      syntax: InjectPlaylist  
    ExtractPlaylist.exe
      syntax: ExtractPlaylist  

    All export files are created in \dad
    All import files are expected to be in \dad

-----------------------------------------------------------------------------
                       DAD 5.0c.277 (Oct.4.05)
-----------------------------------------------------------------------------
  Changed again how DAD looks at LibLoc and LibName fields in a playlist.
    5.0c.276 incorrectly ignored these fields for any non-P (play) event.
    Now properly using the fields for audio events (plays, overs, etc.)
    and ignoring for non-audio events (branches, comments, etc.)

  Added RightClick->EditScript to Playback events
    opens (with notepad) the Script attached to this cut (or empty for a new
    one)

-----------------------------------------------------------------------------
                       DAD 5.0c.276 (Oct.3.05)
-----------------------------------------------------------------------------
  AirPlay items:
    1) Corrected a problem in AirPlay when using a short element in an
      independant slot when in Auto Mode.  Was resulting in the independant slot
      becoming an automation slot.
    2) Dragging a cut from the playlist area into anything but an
      automation slot, independant slot, trash can or the playlist itself
      is considered an "ignore the drag".  Note that dragging the cut
      back into the playlist (even to the same spot it was in) is considered
      a "move" of that cut.

  Changed how DAD looks at LibLoc and LibName fields in a playlist.  If the
    LibLoc is not available - that event gets treated as a NOT FOUND event.
    DAD also ignores LibLoc/LibName for non-P (play) type events.

-----------------------------------------------------------------------------
                       DAD 5.0c.271 (Sep.29.05)
-----------------------------------------------------------------------------
  Tracker now properly uses the "DEFAULT_EXT" extension for cuts that have
    have a blank EXT field

  New/updated DCLs:
    1) SET MIXER LEVEL 'source' 'dest'  []
       Controls the ASI Mixer.  Source and Dest are verbatim from the ASI Mixer
       Source examples: 'Play 1', 'Rec 1', 'Line In 3'
       Dest example: 'Line Out 1'
       Level is referenced to 0dB:  0 = full, -100 = mute, -6 = 6dB below full
       Optional ramp time in ms allows the level to ramp from the previous
         level to the new level specified over the time in ms specified
       Notes: this was designed to support the first ASI Mixer (card) only
              this DCL was actually added in 4.3e
    2) PLAY LIBRARY - plays hilited cut in the Library (stops if already playing)
    3) STOP LIBRARY - stops cut playing in Library if playing
    4) UP LIBRARY - moves hilite bar up one line in Library
    5) DOWN LIBRARY - moves hilite bar down one line in Library
    6) DELETE LIBRARY - toggles delete state of hilited cut in Library
    7) PLAYBACK STATE and IBOC
       Playback State now supports both XML streaming AND IBOC communications
       Examples: Playback State PBK1 'xmlfilename' IPport IPaddress IBOC (both)
                 Playback State PBK1 'xmlfilename' IPport IPaddress (just XML)
                 Playback State PBK1 'xmlfilename' IBOC             (just IBOC)
       Note: \dad\files\IBOC.ini still controls the PAD data and exciter address
             that gets used

  DAD.CFG changes:
    1) VU_METER_MODE = STEREO | MULTI | AUTO
       Default is Stereo - DAD displays normal two channel VU meters
       When set to Multi - DAD displays VU meters as 8 meters for
                           multichannel audio
       When set to Auto  - DAD decides the best VU display
    2) DEVICE_FAILURE_TIMOUT = Seconds     (default is 1 second)
       How long DAD waits for a Drive Device being monitored till it considers
       the failure valid
    3) PLAYBACK_IGNORE_QUERY_USER = true or false  (default is false)
       when true prevents DAD from displaying query messages when unloading
       an unsaved playlist from any automation machine

  Added support for accessing and presetting ALL the audio mixer controls
    of audio boards.  Setup/ConfigAudio/MixerControlAssignment accesses
    this new functionality.  This is an advanced feature and may need
    assistance from Tech Support.  Defaults are generally very acceptable.

  Added support for the Broadcast Tools 8in 8out serial GPI/O device
    Enable by using DAD.CFG command:   REMOTE = BTSRC8 x
    where x is properly configured COM port
    (use COMx_INFO = "38400 N 8 1" to configure the COM port)
    Notes: remember to set GPO_GPI = 8 8 16 as well
           this device needs to be run in its "HEX" mode

  Added additional support for WDM drivers for audio boards (mixer support,
   PCM24, etc.)

  Corrected problem with handling multiple audio inputs on the Audio Science
    6122 card

  Revamped support for the Sydec Mixtreme 192 Soundscape board using DirectSound
    1) Supports up to 8 audio streams per physical output (board has 8 outputs)
    2) Supports full level control of each and every stream for complete
       segue and over support
    3) Streams can be a mixture of PCM and MPEG using standard OS Codecs
    4) Recorders can now record PCM16, PCM24 and MPEG
    5) \dad\progs\DADMixtreme.mix contains the ENCO recommended Mixtreme
       mixer file that should be initialized at workstation startup using
       the Mixtreme provided Soundscape mixer application.  This configures
       all inputs and outpus and disables all record feed-thrus.
       The Soundscape Mixer app is required to change feed-thru with the
       "Mix Input Always" check box of the appropriate channel.
    6) \dad\files\Mixtreme.mix contains the ENCO recommended mixer initialization
       setting for use in DAD.   Rename this file to %location%.mix (i.e. onair.mix)
       and restart DAD.
    7) Multi-channel (surround) 5.1 and 7.1 now supported on the Mixtreme 192

  Changes made to the new Array Preset feature added in 4.3e
    1) Clicking on a blank array button in Preset Mode - clears the
       Remote Area
    2) An Array button in Preset mode now flashes to make it easier to see
       what is preset
    3) Corrected a problem with cuts on array pages getting falsely
       triggered by a Preset on other array pages
    4) Added this Preset feature to Mini-Arrays

  Corrected a problem in Array Group Mode that may have resulted in audio
    not playing on some systems

  Playlists being Chained to no longer need to be created before either
    loading or refreshing a calling playlist.

  Corrected a problem with Setup->MiscDefaults->Accept when DAD is running
    EZ-Modules

  LIBRARY->IN USE check now properly checks for cuts used by Mini Arrays
    and P_Play buttons and supports both User_Setup file styles

  Library RightClick menu enahnced.  Added COPY TO LIBRARY (for multiple
    libraries).   Added Play, Edit, Modify.  Added some separator lines.

  Library->Group Selector stays enabled - even if Group Tabs mode is enabled

  Library->Modify and Library->Add and RightClick->Modify on a Rotate Cut
    now have a PLAYLIST button that takes the user directly to the Playlist
    Modify screen for the rotate playlist specified (or blank for a new one)

  Drag-n-Drop into the Library now supports multiple files.  Note: one
    ADD screen will display for each audio file.   Later this will be enhanced
    to do just one ADD screen for the entire batch of files - with an
    incrementing Cut Number.

  Drag-n-Drop into the Library now leaves the focus on the ADD window in the
    Cut Number field - making it easier to drag an audio file into DAD.

  DAD5.exe officially renamed DAD.exe anticipating release
    All startup batch files will need to be changed to run DAD.exe
    instead of DADpro32.exe

  Setup->CFG & Readme->Readme now opens \dad\read.me\dad.txt
    (used to be dadpro32.txt)

  Corrected a problem with Library->Playlist->PlaylistBar->CreateRotate
    Wasn't filling in the Rotate Cut Add fields correctly (namely the
    Playlist field and Title)

  Corrected a problem with Library->Playlist->Playlist->Merge.  Wasn't
    creating a new merged playlist.

  Edit->Save->Rewrite to same cut number once again warns of user of
    overwriting the existing cut.

  If DAD thinks a cut is open when the user tries to open it with the EDITOR
    the user is now given an opportunity to close it.

  DirectX support is permanently disabled for NT users

  DAD now officially requires DirectX 9.0 for those wishing to use DirectX.
    9.0c is the current version and is highly recommended.

  Rebuild changed to better handle recreating Search.dbf (quick search) files
    if there was an existing old or corrupt Search.dbf files
    This refers to the REBUILD /QS option

  Playlist Saving routines now provide detailed error messages for any
    problems that occur during the save process.  May warn the user that
    the playlist can not be recreated due to being in use, etc.

  Corrected a problem with playing playlists in AirPlay in Auto Mode

  Corrected a problem in AirPlay Auto Mode in dealing with Comment Lines in
    the playlist (was getting stuck on the comment line)

  Corrected a problem with CD Ripper settings not saving properly in CFG
    (bitrates, formats, etc. were not saving correctly)

  Saving a playlist to a new name now properly copies and names any embedded
    voice tracks.  The source voice tracks were previously renamed not copied
    making the source playlist not play correctly.

  Corrected a problem with Disabling Starts on Timed Record if no reclist
    is loaded

  WatchDog.exe now supports DAD.exe

  Internal change made to how a SetClock Digigram NP function was called to
    eliminate a ToolsSetClockPipe error message that was erroneoulsy showing
    up in DEBUG logs

  Internal change made using Mutex to prevent the new setupDAD wizard from
    installing, updating or uninstalling if DAD is running.

-----------------------------------------------------------------------------
                       DAD 5.0b (beta only)
-----------------------------------------------------------------------------
  Added support for SQL as a database engine (chargeable option):
    a) DAD.CFG     SQL_INI = filename   ex:  sql_ini = f:\dad\files\sql.ini
    b) SQL.INI contains:
         [SQL INFO]
         ENGINE = MIMER | SQLSERVER | MYSQL | MSDE
         DSN = DAD5  (user defined)
         USERNAME = sysadm (user defined)
         PASSWORD = enco  (user define)
    c) SQL Server administration and setup required

  Added support for Multiple Libraries (chargeable option)

  DAD 5.0 requires USER_SETUP_FORMAT = 1 and will force this User Setup mode

  Recorders default their Libraries to %datadir% and Cuts till the user
    sets them otherwise (in Record Parameters setup)

  Corrected a problem with P_PLAY text labels not saving correctly in the
    user setup

  RightClick send to Convert now suports any library being viewed.  Used
    to only support the CUTS library

  Playlists now properly play cuts from any valid library. Some cuts that
    didn't exist in multiple libraries would show as INACTIVE unless you
    view that specific library.

  WatchDog.exe now supports DAD5.exe

-----------------------------------------------------------------------------
                       DAD 5.0a (inhouse only)
-----------------------------------------------------------------------------
  Preliminary SQL and Multiple Library support added (chargable options)

-----------------------------------------------------------------------------
                       DADpro32 4.3e.22 (Jul.08.05)
-----------------------------------------------------------------------------
  Improvements made to the chargeable feature for ingesting XML playlists
    from external systems.

    PLAYLIST_SCAN_AND_INJECT_PATH = pathname
        example: PLAYLIST_SCAN_AND_INJECT_PATH = c:\stuff
    PLAYLIST_SCAN_AND_INJECT_PERIOD = seconds
        example: PLAYLIST_SCAN_AND_INJECT_PERIOD = 60

    \dad\REFRESH.ini can now contain a list of IP addresses that the
    ingesting DAD (using the above directives) will notify to refresh
    playlists that may need refreshing as a result of a new ingestion.
    For example: DAD1 does the ingesting and has a playlist called MONDAY
      loaded in PBK1.   If a Monday.XML file shows up to get reingested,
      the MONDAY playlist in PBK1 will get refreshed.   If DAD2 also has
      MONDAY loaded (and is listed in REFRESH.ini), then DAD1 will send a
      message to DAD2 to refresh the MONDAY playlist wherever it's loaded
      within DAD2.

    The two forms of XML's this process supports are:
        ENPS News rundown XML files
        RCS Selector XV (for windows) XML logs

  Added support for freeDB CD Track labeling for the CD Ripper.  See CFG
    changes below for details.   ftp://ftp.enco.com/pub/utilities/freedb.zip
    contains the current Windows version of freedb database usable by DAD.
    Example:  unzip this to f:\dad\freedb and there will be 11 genre folders
    (rock, country, blues, etc.) there.   Set RIPPER_FREEDB = "f:\dad\freedb"

  Added countdown timers to all the AUDITION buttons within DAD

  Added the proper  closing tag to the XML response to a UDP based
    DCL request

  Added support for environment variables in Send Text Rules.
    DAD supports %environment variables" in DCL's like this:
        setenv somevar 'somevalue'
        send command %somevar%

    Now a Send Text Rule can use variables like this:
        This[32]is[32]a[32]test[32][%somevar%]
        note [32] is for spacing only...

  Added a Trash Can on the DAD Desktop.  Users can move it but not remove it.
    Dragging cuts into the trash can acts as a "remove" (like to remove an
    event from a playlist).   Dragging anywhere on the desktop used to act
    as remove.   Except for this new trash can, dragging to the desktop does
    nothing

  Added a "machine picker" icon on the DAD Desktop.  Users can move it but not
    remove it.  Clicking on this new icon is another way to select machines
    (like double clicking on the desktop).  May be easier for some touch screen
    users to use this icon to pick a new machine to use.  Active only in Expert
    Mode.

  Added ARRAY PRESET Mode - allows users quickly assign a cut to the
    "Send to Remote Play" area of the Main Array
    Enabled with SETUP/MiscDefaults/ArrayPreset

  Enhanced the Command Cut Editor:
    1) RAW EDIT mode opens NOTEPAD to edit the CMD files directly.
       allowing for easier cut/paste/copy functions
    2) The DCL "separator" has always been the colon symbol ":".
       To allow for easier editing of the CMD files,  is now also
       supported.   So:
             "load cut 12345 quad1:play quad1"
                 is now equivalent to
             "load cut 1234 quad1
             play quad1"
    3) Changes to Command Cuts now result in the RECORD DATE being updated
      so Gateway can "sense" the change and transfer the Command Cut

  Library display improved to better handle changes made to the library by
    others while hiliting/selecting cuts.  Now cut based rather than relative
    position based.

  Library display changed to allow the CUTS column to be moved to other than
    the first column

  DCL changes:
    1) UNLOAD QUADx now support quad decks 2 thru 16
    2) SEND TEXT with hex [hXX] now supports beyond 9F (thru FF)
    3) LOAD CUT AirPlayX nnnnn is now supported to load AirPlay slots
    4) UNLOAD AirPlayX is now supported to unload AirPlay slots
    5) Corrected a problem with SELECT MACHINE  PBKx in NON-Expert mode
       was sometimes displaying the wrong machine
    6) Added option to the PLAYBACK STATE DCL to support sending via UDP
       PLAYBACK STATE PBKx 'filename' port ipaddress UDP
       example: PLAYBACK STATE PBKx 'dad.xml' 4444 10.44.44.44 UDP
    7) OUTPUT LEVEL now supports ramping (level change over time)
       Syntax:
         OUTPUT LEVEL    
       Example:
         Output Level PBK1 -3 2500 log
    8) STOP RECLIST - stops any active Timed Recording

  DAD.CFG changes:
    1) USER SETUP Based Channel Assignments now only resave the channel
       assignments if the Channel Assignments are changed.  DAD used to
       save them anytime the USER SETUP was changed - this could result
       in Channel Assignments inadvertently taking on the characteristics
       of the machine doing the user setup modifications/savings.
    2) added SQL_INI - see 5.0b notes above
    3) RIPPER_FREEDB = "path"
       example: RIPPER_FREEDB = "f:\dad\freedb"
       CD Ripper will now utilize the data in this directory for filling
       in Track Titles, Artist, Album, Genre, script data, etc.
       Script files (cut#.txt, cut#.html) get filled with rip data as well.
    4) PLAYLIST_MODIFY_MAX_INSTANCE = x
       User can specify how many playlist modifiers can be displayed at once.
       Default is 10
    5) OVERRIDE_LOCATION =  or NONE
       Works with the CUTDRIVE_OVERRIDE = true/false switch (tied to
       SETUP/MiscDefaults/Utilize-Ignore-Location - when set to TRUE
       (switch set to IGNORE) - the LOCATION field in the library is ignored
       and DAD will look in the OverRide_Location for the audio file

  AirPlay changes:
    1) New "situation color" mode - settable in Config - presents a
       gradient of colors for Auto Mode slots with matching colors in the
       playlist.  Makes it easier for user to see tie between playlist
       and play slots.   Skipped cuts in the playlist show up in Magenta.
    2) Corrected problem with Manual Mode and loading cuts from the playlist
       after modifying the playlist and pressing CHANGE (CHG).   Was loading
       the same cut over and over - not advancing thru the playlist
    3) User Tab changes
       a) Delete Item and Delete All added to the RightClick on a User Tab item
          (had only Rename Tab & Delete Tab).
       b) When sending to a User Tab (RightClick on an item in the library tab)
          now offers Send To any existing "Tab Names" - was only send to a New Tab.
          If there are 3 User tabs, then this dialog will have 4 choices, etc.
    4) 2nd, 3rd, 4th line data now supports:
       Album, BillBoard, UserDef, Producer, ProdDate, Genre, AltCut
    5) RightClick->Audition no longer resets Audition settings for a slot
    6) RightClick->Add in the playlist window no longer allows adding
       Branch Events, etc. that don't apply to AirPlay
    7) Playing a Rotate cut now properly display the 2nd,3rd,4th line data

  Rotate cuts now support "nesting" to 3 levels deep.  i.e.  A rotate playlist
    can contain a rotate cut.

  Changed Playback State to better handle lots of short events.  Added UDP
    support as well - see above.   Should now properly handle multiple
    machines sending PBS simultaneously (i.e. PBK1 and PBK2)

  Config Playbacks 2nd line data (was outcue field) now supports:
       Album, BillBoard, UserDef, Producer, ProdDate, Genre, AltCut

  Corrected Channel Assignments to properly support Playback Machines 5-16

  Corrected a TIMED RECORD problem that would prevent record events from
    recording if the reclist was sorted by anything but Start Time

  DAD now rewrites Cart Chunk data in audio files if Cart Chunk fields are
    modified within DAD (only some were triggering a chunk rewrite)

  WatchDAD.ini and WatchDOG.ini defaults changed to reflect the use of
    c:\dad\watchdog instead of c:\watchdog

  Internal changes to buffer sizes to help alleviate some elusive problems
    with playlist modifying/saving

  Added a PLEASE WAIT to playlist saving in full screen PLAYLIST MODIFY.
    Users are strongly encouraged to wait for these and all PLEASE WAITs.

  Added a STOP RECLIST button to Timed Record interface to allow user to
    stop any active Timed Recordings.  Also added STOP RECLIST dcl to do
    the same.

  Completed input support to the Telos Axia LiveWire 8in 8out (stereo) audio
    device

  Added 24bit recording for those audio boards that support it

  Added 24bit audio visualization support to the Editor

  Minor renaming of buttons in SETUP to better support Multiple Libraries

  Using "space" character in Type Ahead when sorted by Title now correctly
    uses the space for the search

  Changed Type Ahead to support libraries with 20000 or more cuts

  Corrected problem with CutRangeDefs.ini when using the LOCATION field
    for recording cuts.

  Rewrite Audio from the Editor now support CutRangeDefs.ini for prefilling
    the LOCATION field based on Cut Number

  CutsLog files now saved in \dad\files - used to be in \dad

  Start/Kill Times now support crossing midnight for dayparting
    - when used without Start/Kill Dates - the start/kill times are the
      times within ANY day that the cut can play
    - when used with Start/Kill Dates:
      the start date/time is the exact date/time at which the
      cut becomes ACTIVE
      the kill date/time is the exact date/time at which the
      cut becomes INACTIVE

  Array fonts handling changed to support array window resizing better

  Setup/Save buttons now save the %location%.CFG file as well as the
    current User Setup.  They also save any registry settings (column
    widths, placement, window locations, etc.)

  Corrected an internal problem with Tracker that could result in
    general instability

  Changed an internal problem with UDP communications.  Garbage sent to
    DAD via UDP could result in instabilities.

  Full Screen Playlist Modify Library columns (left side) settings (size,
    placement, etc.) are stored with SETUP/SAVE

  Corrected a Type Ahead then up/down arrow problem on Quad Slots.   Used
    to Load the wrong cut

  Set Device DCL reinstated for PBK's 5-8

  Corrected a Soft Branch problem that would result in ignoring the branch
    on autoLoad cuts currently playing

  Corrected CutServer (1.3b) to properly run when TransLog is NOT running
  Corrected CutServer (1.3c) to:
    a) better handle network database access
    b) no longer restart at midnight if no restart time is specified
    c) the Enable Scanning Checkbox state is remembered from session to
       session
  Corrected CutServer (1.3d) to better handle DropBox and Gateway activity
  Corrected CutServer (1.3e) to handle DAD Library Purges properly
  Added to CutServer (1.3f) a DELETE EVENT button to allow user to delete
    a pending event or events

  Internal changes made to info pop-ups (message windows, etc.) that could
    cause instabilities.  Most prominent in Playlist Saving, Closing DAD,
    and Editing.  Also changed handling of PLEASE WAIT pop-up window
    exiting ("X")

-----------------------------------------------------------------------------
                       DADpro32 4.3d (Jan.27.05)
-----------------------------------------------------------------------------
  DCL additions and changes:
    1) Addition to SUPERPLAY DCL:
       SUPERPLAY  [board] [ ] 
          is the new optinal FADE parameter that overides the
         Superplay default from CONFIG PLAYBACK
         example:  superplay pbk1 /F2.5

    2) EDIT  DCL now supports RECx machines
        example: EDIT REC1
        opens the editor on the cut currently loaded in REC1

    3) LC has been added as a shortcut for "LOAD CUT"
        example:  LC QUAD1 12345   (same as LOAD CUT QUAD1 12345)

    4) PAUSE dcl now supports RECx machines
        example:  PAUSE REC1  will pause a recording
        issue RECORD REC1 to continue the recording (like an APPEND)

    5) Added TRACKER EXIT dcl to allow for save/close of Tracker Sessions

    6) DISPLAY TRACKER PBKx will no longer allow multiple Tracker Sessions
       to start
       Note: when building a button to start Tracker and start a VO Recording
       delays must be added to allow Tracker to completely display
       ex: DISPLAY TRACKER PBK1
           DELAY NEXT CMD 500
           TR STYLE 3
           DELAY NEXT CMD 500
           TR REC START

      Similarly to make a button to stop tracker recording, save and exit
           TR TEST STOP
           DELAY NEXT CMD 500
           TR EXIT

    7) The TRACKER control DCL's now support AirPlay

    8) STOP AIRPLAYx corrected to work properly in both MANUAL and AUTO modes

    9) Added support for PAUSE QUADx
        (also added RightClick->Pause for Quad Play buttons)

    10) OUTPUT LEVEL PBKx  now supports the PERSIST option
      Makes the setting persist thru transitions, loads, etc.
      example:   output level pbk1 -10 persist

    11) Added support for HEAD | TAIL to the SET DCl
      example:   SET HEAD REC1

    12) NOTAKE option for SuperPlay in MasterLog corrected
       When MLOG was idle, this option was inproperly playing the TAKE cut

    13) Load Script dcl now supports specifying an URL
      example:   LOAD SCRIPT www.enco.com
      will load ENCO's home page into the script machine (as long as
      connectivity is there)

    14) PLAY AIRPLAY will play the "next" (blinking) event in AirPlay when
      in AUTO mode

    15) SET SERIAL OUT x ON/OFF - now supported for IP outputs

    16) GENERATE REPORT now supports month/day/year wildcards for output
          ex:  Generate Asplay  GeneR@M@D@Y output@M@D@Y.txt

    17) INTRO & OUTRO PBKx dcl's no longer control the CONFIG PBK Audition
       settings

  DAD.CFG additions and changes:
    1) RECORDx_EDIT = "program to run.exe"
      "program to run.exe" indicates what external program to run
      when the RECORD/EDIT button is held down for > 2 seconds.
      Handy for starting up a third party editor.
      Note1: use %1 to pass the current hilited cut pathname
          to your program to run.  Example:   "notepad.exe %1"
      Note2: STRATA = ON  takes precedence over this option

    2) RECORDx_EDIT_DESC = "6 characters"
      example: RECORD2_EDIT_DESC = "CoolED"
      Allows the user to control the text of the RECORD EDIT button for REC2.
      Useful when this button is used to start up 3rd party editors
      like Cool Edit Pro.   Must come "after" the RECORDx_EDIT directive.

    3) FADE_TYPE = LOG or LINEAR     (default is LOG)
      Controls how DAD performs fades.
         LOG = Logarithmic       LINEAR = linear

    4) USER_SETUP_FILE_FORMAT used to default to 0.
      for newly created %location%.cfg files, the default is now 1
      1 = human readable user setup files
      0 = old style DAD only readable user setup files

    5) FADE_BACKGROUND = TRUE | FALSE
      Allows fades to occur more smoothly in background thread.
      Default is FALSE during testing phase of this new option.

    6) FAILOVER_COMMAND_CUT = nnnnn
       FAILOVER_COMMAND_DELAY = xx
         when a drive failover occurs - execute the nnnnn command cut
         after xx seconds

    7) EDITOR_INSTATRIM_LEVEL settings now properly saved
       EDITOR_INSTATRIM_HEAD settings now properly saved
       EDITOR_INSTATRIM_TAIL settings now properly saved

    8) SEND_TEXT_x_IO = UDP port ipaddress
       new UDP option allows user to specify using UDP Datagrams instead
       of the default IP SOCKETS.  Used to be only port 2002 was UDP.
       example: send_text_a_io = 4444 10.44.44.44     (ip socket)
                send_text_a_io = 2002 10.44.44.44     (udp datagram)
                send_text_a_io = UDP 4444 10.44.44.44 (udp datagram)
                send_text_a_io = UDP 14 10.44.44.44   (udp datagram)

    9) Corrected and reinstated use of the WORKING_SET_SIZE_MIN/MAX setting
       to properly hand memory usage.   Un-remarking out these lines in CFG
       will allow DAD to manage memory utilization preventing high memory
       usage.  This setting had been disabled in 4.2n

   10) DIGIGRAM_USE_PATCHED_LEVELS = true/false
       defaults to TRUE - no change to existing operations
       when FALSE - Digigram users encountering an MPEG file with improper
       ancillary data in the MPEG frames will ignore the normal process
       of digital attenuation provided for by this data.
       These bad frames have been found in NPR/BBC Content Depot BWF audio files.

  Added link from DAD to ENCO's new conversion package "audioCVT 6.0" which now
    lives in c:\dad\audioCVT.   Access is currently from LIBRARY->RightClick
    and from within the CD RIPPER. "Audio Conversion" in the DAD Security Key
    is required to support audioCVT.  Set defaults in audioCVT however you wish.
    When you send a cut (or cuts) to it, any necessary conversion is performed
    automatically.  Handy for normalizing a DAD cut, or changing its format or
    sample rate.  Handy for ripping cuts at sample rates other than 44.1k, etc.

  Added initial support for displaying up to 16 Playback Machines.
    Accessible with RightClick->PBK->5-16 on the DAD desktop for users that
    have access to PBK4 and this new chargeable option.

  Added initial support for 5.1 and 7.1 multichannel sound using Audio Science
    50x4 series audio cards (5041, 5042, 5044)

  Added 3 stream support to the 504x Audio Science audio cards

  Corrected problems with Mono playback and Antex SX-23 audio cards

  New OVER support via RightClick on Playback playlists for creating and
    editing overs on the fly.   Users can now select an audio cut in the list,
    associate it with the preceding or next cut and quickly create an Over.
    Over Editor now displays Talk Time and has a "Hit the Post" button like
    Tracker.

  Revamped how Fades are processed for SuperPlay (next).  Fades are now
    given higher priority and are smoother and more complete.

  Added intial support for SYDEC's MIXtreme 192 16in 16out (mono) audio device
    The 16 mono channels are presented in DAD as 8 stereo channels
    (requires use of the ENCO provided \dad\progs\DADmixtreme.mix)
    Assistance from ENCO is recommended for users wishing to use this device.

  Added input support to the Telos LiveWire 8in 8out (stereo) audio device
    Also added metering (level) support to inputs and outputs

  Added Playback machine logic to the GPO file  (for Playback Machines only).
    PGM_START  PBK1  C "Alert 'PBK1 is playing'"
    PGM_STOP   PBK1  C "Alert 'PBK1 has stopped playing'"

  Additions to the CUE Machine DCL Controls:
    CUE   loop 
    CUE   inc 
    CUE   dec 
    CUE  testplay      plays from head to tail - toggles as play/stop
      example: CUE PBK1 head loop .20    loops .20 second from the head point
               CUE PBK1 head inc .15     moves the head point forward .15 sec
               CUE PBK1 head dec .14     moves the head point backward .14 sec
               CUE PBK1 head stop        stops the looping and stores the head

      loop  defaults to .12 seconds (and should not be set lower)
      inc/dec  defaults to .10 seconds
      Buttons added to Cue Machine Display for Loop Mode
      Cue DCL's will not work on an empty PBK machine

  CUE Machine now works on Array buttons
    - Requires use of human readble User Setup Files:
        i.e. USER_SETUP_FILE_FORMAT = 1
        (be sure to SAVE user setup using this setting)
    - Added RightClick->Cues to access cue machine for that button

    - Syntax for DCL Access to CUE for Array Button is:
        DISPLAY CUE  P R C     P = Page  R = Row  C = Column
        CUE   
        ex: display cue array 1 2 3
            cue array head loop
            cue array head inc
            cue array head stop

  CUE Machine controls like FF, REV, REW are now supported for ASI audio
    cards (PCM16 mode only)

  Cue Machine Accept no longer croaks when using RightClick->Cue->Accept in
    Full Screen Playlist Modify playlist events

  Script Machine now supports URL's.
    Example:  user can enter:   www.enco.com into the LOAD line of a script
    machine to explore the ENCO web site (as long as internet connectivity
    exists of course)

  SETUP->README button changed to:  SETUP->CFG & README

  DADpad now support the Array based CUEs.
    Press F8 - then any DADpad audio button.  DAD enters new CUE HEAD LOOP
    mode.   Use DADpad LEFT and RIGHT arrow keys to adjust head.  Use DADpad
    ENTER key to save the HEAD CUE.

  SETUP->CFG & README->REFRESH now properly support a connected DADpad

  Array panels now have a new STACK mode - controlled in SETUP->MISC DEFAULTS
    Allows user to press many array buttons - they "stack" up and play one
    after another in the sequence pressed.   To remove one from the stack,
    just press it again.  Third line of the button indicates where it is in
    a stack.  We don't recommend reassigning "stacked" array buttons yet.
    Transition from button to button is simple Autoplay and not settable.

  Array panel send-to-remote cuts now display the cut number and TITLE
    in the page title bar.  Also corrected PLAY ARRAY 0 0 0 problem when
    used with no cut assigned to remote.  Would prevent a real send-to-remote
    from not firing reliably.   A looping problem with send-to-remote was
    also corrected.  A problem with assigning an unused Array button while a
    send-to-remote is playing also corrected.

  Array panels now support individual page titling.   Access with RightClick
    on any button within a page.  Send-to-remote cuts info overides any
    custom page titling.

  Mini Array page number display now supports 2 digits to properly show
    thru page 10.  Saving these pages now properly supported in all Arrays.
    Note: Array pages 6-10 requires use of human readble User Setup Files
        i.e. USER_SETUP_FILE_FORMAT = 1

  Array loop mode state now gets cleared with user setup reload.  Note that
    loop mode state is not saved.

  Array Drag-n-Drop "move" no longer clears previously drag-n-drop assigments

  Array Drag-n-Drop "move" now maintains original button color

  Array Drag-n-Drop "move" now properly handles paused buttons

  Corrected a problem loading Full Array with LIBVIEW

  Changing a USER SETUP while an Array button is playing no longer prevents
    the playing button from being stopped.

  Greyout After Play now supported in DADpad

  P_PLAYs now support "commands".  RightClick on a P_PLAY button and select
    SET TEXT.  Commands can be used by quoting your entry and colons can be
    used to enter multiple commands.   255 character limit.
      For example: "play pbk1"
                 : "stop quad14:load cut quad 14 12345:play quad14"
      Note: These commands are in addition to audio cuts that may be assigned
            to a button.   If you want only a command to run - be sure to
            clear the audio out of the button

  P_PLAYs no longer stay RED when done playing when changing user setups
    while playing

  Added an "UPDATE CUT RECORD" to the Library->Modify->Format button.
    If the audio header data differs from that in the library - this button
    updates the FORMAT, RATE and MODE fields automatically (and saves)

  Library->Modify popup window no longer has any field in focus when it opens

  The DELETE key on the Keyboard now does the same thing as Library->Delete
    button.  Also added RightClick->Delete for hilited entries in the Library
    List.

  Full screen Playlist Modify now saves column setting changes

  ADD ALL in Playlist Modify now supports all sorts.  Used to work only if
    sorted by CUT NUMBER.

  Added a "PLEASE WAIT" message to playlist saving.  Some users were not
    waiting long enough to allow large playlist to save before trying to
    use them - and getting empty playlists.

  Mini-Playlist Modifier can now be loaded even if no Playback machines
    are enabled in the DAD key.

  Mini-Playlist Modifier columns now display correctly when launched from a
    PBK that has adjusted columns

  DAD now properly handles changing user setup while playing array buttons.
    There used to be no way to STOP the playing cut.

  AirPlay changes:
    1) no longer allows loading NOT FOUND events into play slots
    2) now prevents the inserting of a cut above a playing cut in Manual
       mode (as it did in Auto mode)
    3) Config now supports controling the display of VU Meters and the
       Clock separately
    4) startup number of slots now properly controlled by Config
    5) GPO PGM_STOP issues with 3 or less Manual slots and the STOP AirPlayX
       command corrected
    6) PLAY AIRPLAY and SUPERPLAY AIRPLAY will play the "next" (blinking)
       event in AirPlay when in AUTO mode
    7) SUPERPLAY AIRPLAY anomolies with manual slots corrected
    8) OK to Clease popup for unsaved playlists is now modal - requires input
    9) ROTATE cuts now display "extra" info (outcue, agency, artist, etc.)
   10) Corrected problems with the Superplay Airplay DCL that resulted in
       the wrong slot playing or the loading of an independant slot

  Corrected a potential timing iseue with Rewrite Audio that could result in
    a cut #00000 in the Library when used with CutServer

  Corrected a problem that occurred when two workstations were doing REWRITES
    at the same time.   Caused cross-linked audio files due to limitations
    in temp file names.

  Corrected a timing problem when editing a cut and using CutServer.
    Some conditions could result in an unhappy DAD.

  Corrected a problem that occurs when inserting an event around a playing
    DELAY event in a playlist

  Corrected a problem with Branch events that follow an AUTOFILL block in a
    playlist.   Cuts inserted by AutoFill would cause the Branch event to
    sequence incorrectly.

  Corrected a problem when AutoFilling with a Digigram Mixart audio card.

  Corrected a problem with Branch events that are used in a machine that
    consumes cuts with invalid cuts that could not be consumed.

  Corrected a timing problem in TRACKER when the top cut (outgoing) is very
    short (space to the left of the waveform).  Tracker was off by the amount
    of space that existed in front of the top waveform.

  GENERATE VO CUT in TRACKER has been corrected to properly fill the
    MODE (stereo/mono) field

  TRACKER's Record Deck (REC5) now properly sets the bit rate to match
    the Outro (top) cut

  Corrected a problem with TIMED RECORDINGS retry (added in 4.3a).  If a
    record machine is busy, when it becomes free it was placed in an
    invalid state preventing it from being usable.

  Corrected a problem with Record Machine mode settings not saving

  Corrected a problem with playing an ARRAY REMOTE CUT in Interupt Mode

  The COPY CUT DCL now properly copies SLATE and EDL files

  Corrected a problem with the CD RIPPER where with some new drives just
    closing the CD ROM drawer could result in serious performance
    degradation in DAD (audio dropouts during playback for example).

  Corrected GPO problem with multichannel Audio Science cards.  If first
    channel was non-idle, GPO would not work for all other channels

  Corrected a problem that could occur when positioning to the end of an
    audio file in the Editor.

  EDITOR now follows DAD Security and Cut Security more rigidly.   It was
    possible to deleting EDL's for example with readonly rights.

  Pressing F1 (for P_Play1) no longer pops up the help screen for any
    focused machine.

  Corrected a problem with Asplay reporting of Scheduled Durations introduced
    in version 4.3c for supporting stretch-n-shrink based lengths.

  SETUP->EDIT QSEARCH FIELDS button added to more easily control the
    quick search fields (\dad\files\scontrol.dat)

  Defaults for Quick Search (\dad\files\scontrol.dat) changed to 8 fields
        CUT, TITLE, AGENCY, OUTCUE, ALBUM, GROUP, USERDEF, ARTIST

  Corrected a problem with saving User Based Channel Assignments

  Changed the maximum Digigram Max Mixes - was internally being limited to 4
    mixes - now back to 8

  Major improvements made to the entire Quick Search feature.  Including
    support from all DAD utilities (Gateway, AudioCVT, DropBox, CutServer,
    CoolDAD-cooledit/audition.
    Several performance enhancements made (so now this is 'quicker' search).
    Several inconsistancy problems corrected (from copying, rewriting,
      re-recording, modifying data, deleting, etc.).  We recommend
    regenerating your quick search indexes (SETUP->GEN QUICK SEARCH).

  Debug file naming changed.   At midnight - any open debug file (specified
    by the DEBUG environment variable) is change to xxxxx.MMDDYY.
    Example:  SET DEBUG=OnairDebug
    Files will be renamed OnairDebug.mmddyy each night at midnite

  Cuts transaction logs (TransLog.Yes) also supports files being renamed
    at midnite to MMDDYY datestamps.

  Significant changes made (again) to Playback State to stabilize it
    especially when used with lots of small cuts or command cuts

  Corrected sending decimal strings with SEND TEXT via UDP.
    example: SEND TEXT A 'this [10] sends decimal 10'

  Added the ability to send hex based strings via Send Text
    example: SEND TEXT A 'this [h27][h03] sends hex 27 and hex 03'

  Corrected a problem with support of GPI's on the USB based Switch&Sense
    8in8out controller

  Changed support of CartChunk audio files that TagText fields greater than
    40 bytes

  Initial support for WatchDog added (chargeable option)

  Cut #99999 can now be deleted and purged from a CutServer client

  Manually disconnecting a CutServer DAD Client now disconnects the right
    client - even if the user quickly selects another client connection
    prior to the disconnection completing.

  \dad\progs\KeyView.exe changed to reflect new options

-----------------------------------------------------------------------------
                       DADpro32 4.3c1 (Jul.30.04)
-----------------------------------------------------------------------------
  Added functionality to DPL.  Command cuts can now support this model:
        command1
        command2

        if (conditional A)
           command3
           command4
        elseif (conditional B)
           command5
           command6
        else
           command7
           command8
        endif              (this endif is the new directive)

        command9
        command10

   Summary: command1 and 2 will run no matter what.
            command3 and 4 will run only if condition A is met
            command5 and 6 will run only if condition B is met
            command7 and 8 will run only if conditions A and B are not met
            command9 and 10 will run no matter what.
   Note:  There can currently be only one "IF BLOCK" within a single command
          cut.   Nested "if" statement are not supported (yet).

  AirPlay Skipped List now supports two length fields:
    Actual time played
    Cut length (scheduled)

  Tracker error messages (like: VO is out of range) now handled properly
    when AUTO-SAVE mode is enabled

  Corrected problems that resulted in duplicate GUID's (lib->mod->copy and
    the COPY DCL)

  Corrected a problem with cuts recorded in 4.3b on an ASI card that resulted
    in not being able to see a waveform in the DAD editor.

  DAD can now edit MP3 files with ID3 headers (DAD can read - but will not
    write ID3 headers)

  DAD will no longer choke if a user issues this invalid DCL:
        INJECT 01234[G]
        the proper form is with a space INJECT 01234 [G]

  Corrected the PLAY MLOG dcl - no longer stops a playing TIMED event

  DAD will no longer choke on the FF and REW CUE commands when using an ASI
    audio card.   Full support for FF and REW with ASI coming later.

  DAD in failover detect mode will no longer failover when DAD gets very busy
    like doing a hugh MODIFY cut range dcl

  Corrected sending decimal strings with SEND TEXT via IP.   Only the first
    byte would get sent.   Example: SEND TEXT A '[10][13][117]'

-----------------------------------------------------------------------------
                       DADpro32 4.3b16 (Jul.14.04)
-----------------------------------------------------------------------------
  Added support for sending commands to multiple users at once: SENDLIST's
    DAD.CFG:   (for defining up to 3 SENDLIST's)
      SENDLIST1 = "sendlist filename1"
      SENDLIST2 = "sendlist filename2"
      SENDLIST3 = "sendlist filename3"

    SENDLIST FILENAME contains:
      ONAIR
      PROD
      10.44.44.45
      PROD2

    DCL EXAMPLE
      SEND COMMAND SENDLIST1 'whatever dcl you want here'
      i.e.  SC SENDLIST2 'alert \'some message\''

  Added support for Comment Colors in Playlists

  Added option to the PLAYBACK STATE DCL to generate unique XML files names
    example: PLAYBACK STATE PBKx 'uniquename'
    will create XML files of this format:  HHMMSSms.PBKx.XML
    where ms is millisecond time stamp
    example: PLAYBACK STATE PBKx '[c]\xml\uniquename' is used to place
    the XML files in a specific directory

  Added Drag-n-Drop and Move/Copy modes to the RightClick options for
    Array buttons.  Default mode is OFF.   Users can now drag-n-drop from
    Arrays to other DAD machines.

  Added more data fields to the LIBVIEW of full screen Array.  User can now
    select Agency, AltCut, Artist, Outcue, Title and UserDef when filling the
    Array with cuts that have this field beginning with a specific letter
    of the alphabet.  Used to be just Title.

  New Playback Config setting:
    CUE MACHINE CUT - can set to ONDECK (play slot) or HILITED (next cut)
      When the DISPLAY CUE dcl is used - this setting is followed - unless
      the new "ondeck" paramater is used in the dcl.

  New DAD.CFG directive:
    CRITICAL_FILES_REMAIN_OPEN = TRUE | FALSE   (Default is TRUE)
      Allows DAD to close critical files so Gateway can update inuse
      destination files.    (right now this is just for Groups.dbf)

    SPACE_BAR = ENABLE or DISABLE
      Allows user to turn off the Windows Space Bar for the "focused"
      button. Some users like to use Space Bar to press the hilited button,
      some don't.

  New DCLs:
    SET SERIAL IN X ON/OFF   - allows for enabling/disabling a specific
                               serial input line

    LOAD CUT   [trans] - now supports an optional transition code
      example:  LOAD CUT MLOG 1234 L   (where L=autoLoad and can be S A N L)
      if no code specified - then the Cue & Automation default is used

    DISPLAY TRACKER PBKx - opens Tracker for the specified machine at the
      hilited event of that machine

    TRACKER   
      example:  TRACKER INTRO START   plays the incoming Tracker event
      Now common Tracker buttons can be remoted to physical buttons
      Shortcut DCL for this command is: TR
      example:  TR OUTRO STOP
      If event is already playing - issuing START again will stop it

    TRACKER   - obvious buttons within Tracker

    TRACKER STYLE <1, 2, 3>
       1 is Segue Mode
       2 is Production Element Mode
       3 is Record Voice Over Mode

    EDIT PBKx - like pressing the EDIT button on a PBK or MLOG
      opens the editor for the cut that PBK would open (cued or hilited)

    DISPLAY CUE PBKx now supports "ONDECK" parameter to allow Cueing
      cuts in the Play Slot - defaults to hilited cuts in the playlist
      example:   DISPLAY CUE PBK1 ONDECK

    CUE PBKx  
      Allows for remote interface to the CUE machine
        CUE PBKx HEAD PLAY
            Current cut in Cue Machine starts playing from
            Head or current CUE point
        CUE PBKx HEAD STOP
            Stops the Cue playback and STORES current play position
            as CUE point
        FF - same as PLAY - just double speed
        REV (reverse) - same as PLAY - just backwards
        REW (rewind) - same as REV - play backwards double speed
        TAIL - same as HEAD - adjust CUE end point
        CLEAR - clears that CUE point (start or end)
      Ideal for USB button boxes that supports presses and releases
      (i.e. PLAY on PRESS -  STOP on RELEASE)

    INJECT now supports a location parameter
       example:  INJECT 01234 [G]
          ignores the location provided in the EXT file and uses G:
       default is no parameter - Inject uses the location provided in the EXT
       if nothing is provided in the EXT or the parameter - C: is used

  Added support for longer than 10 characters for Name and Location
    environment variables

  New DADpad mode:
    CFG setting: DADPAD_MODE = FULL or SPLIT
    New Split mode - uses two Mini-Arrays to split the DADpad into
    two halves - allowing channel assignments between the halves
    FULL mode (the default) utilizes the FULL SCREEN ARRAY.
    Entire DADpad communications interface revamped to eliminate
    dropping of characters.

  Tracker Changes:
    1) See DCL's for Tracker above
    2) New Auto Save Mode added - when checked all tracker changes are
       automatically saved
    3) ALL checkboxed modes are now remembered from session to session

  Added RightClick->Help to PBK's.  Testing different ways to startup
    HELP pages.

  Added support for the Telos LiveWire 8 input 8 output audio device

  Improved the handling of LOOP STATE on Array Buttons.  Loop mode is
    definitely OFF till turned ON now

  MasterLog changes:
    1) Added resizing to better fill high resolution screens.
        Three sizes supported from 648x480 to 800x600
    2) DCL button now supports two lines of text
    3) When using the LOAD CUT MLOG DCL - MasterLog now properly displays the
       inserted cut

  Airplay changes:
    a) Changed the PLAY AIRPLAY x dcl to NOT act as a toggle.  Sending this
       PLAY dcl to an already playing slot no longer has any effect (used to act
       as a toggle and stop that slot)
    b) Changing the transition in AirPlay Auto mode to Segue, now properly
       changes the transition - was doing an Autoplay
    c) Playing more than 2 Airplay slots at the same is now properly supported
    d) Superplaying Airplay slots now prevents overlapping segues (only one
       segue can be done at any one time within a DAD machine)
    e) Superplaying into a ROTATE cut is now handled better.
    f) Added AirPlay config setting:   MAX LOGS COUNT   (default is 50)
       assists with memory usage.   limits how many entries can display in
       the Skipped or Asplay tabs
    g) Play a new event in Manual mode while another is still playing now
       properly logs to Asplay
    h) STOP AirPlayX DCL in Auto mode now works for all slots (wasn't working
       for the last auto slot).
    i) Using Send Text Rules in Auto Mode now works (was behaving very badly)
    j) Made some timing changes to make AirPlay more stable in Windows NT4
    k) Moved most AirPlay config settings to the workstation CFG file
    l) User can no longer replace or unload a Paused event
    m) Comments now properly skipped when manually "fingering" cuts into a slot
    n) Rotate Cuts now display the proper TITLE and Cut Number
    o) Type ahead corrected when sorted by Title
    p) Corrected a problem where short shotgun elements with segues could
       cause slots to display improperly or play out of order

  Corrected the Script Machine in HTML mode to deal with Internet Explorer 6.0
    improvements.  Some graphic objects weren't displaying properly.

  Corrected some issues with Digigram Mixart cards. Some cards were reported
    as recording fine but not playing

  Corrected a problem with Library/Modify/Copy Cut  and Library/Add/Normal
    that sometimes resulted in a Codebase 935 error

  Library Displays now properly follow the latest used "VIEW" settings

  LAST PLAY DATE and SEGUE START are now sortable Library fields

  Drag-n-Drop into P_PLAY buttons now properly loads the TEXT of that p_play
    wasn't wrapping or utilizing two lines before

  Added the SEGSTART field to the playlist display in pbk's, etc.
    Remove the PLAYBACK_N_PLIST_CONFIG lines from the CFG file and restart
    DAD to let DAD add this field.

  Users can now change the transition code on Branch Events in Fullscreen
    Playlist Modify

  Corrected a problem with saving an existing playlist from full or mini
    playlist modifiers - saving from the playlist itself in a machine was OK

  Increased the event counter field in Full Screen Playlist Modify to 4 digits

  Corrected a problem when placing a HARD BRANCH before an AUTOFILL START
    event in a playlist.  Caused the deck to skip for several seconds.

  Corrected a problem when inserting a PLAYLIST CUT that contains Voice Overs
   into an existing playlist that also has Voice Overs.

  Corrected an issue when performing multiple simultaneous recordings when
    CutServer is being used

  Added PLEASE WAIT to the marking of cuts to be deleted to allow large
    groups of markings to complete before allowing further Library activity

  Cuts marked for deletion can now be "modified" without losing the
    delete flag.  Handy for users that want to place deleted cuts into a
    different group.

  Recorders are now prevented from attempting to APPEND to a ROTATE or
    PLAYLIST cut

  Corrected an issue with CutServer clients that could lead to duplicate
    cut numbers resulting in the Library - especially after doing a search

  Auditioning a Rotate Cut in Quad or 4Play now properly follows the Head/Tail
    settings

  Audition Buttons in PBK and MLOG now display "ASTOP" when playing
    so these buttons don't get confused with normal "STOP" buttons

  The BACKTIME DISPLAY now places negative values in parenthesis "( )" so
    the user can tell when timing is "over" or "(under)"

  CD Ripper Bitrate field is greyed out for formats that don't need
    bitrate settings (like PCM16, AudioCVT, etc.)

  Bitrates of ripped cuts now follow the same standard as recorded cuts

  Moved most 4Play config settings to the workstation CFG file

  Corrected support for Japanese and Thai fonts for Alert and
    POPUP Info windows and Playlist Description field

  Corrected support for Thai fonts in Array buttons

  Corrected some general font problems in Array - especially after resizing
    the Array panel itself

  Title with the "&" symbol in them are now supported in Array button labels

  Corrected the Time Remaining display for PBK's - would stop counting
    prematurely

  Corrected Time recording failure for events that cross 8:00pm EST
    Dad would skip these events (may explain some missed recordings)

  Corrected a cosmetic problem with POP-UP info windows for cuts that play
    via ARRAY REMOTE PLAY  (cut number was garbled)

  RightClick Clear for Array buttons now properly saves to the user setup

  Playback State XML file/stream now supports ,
     and