SimpleSchedules - version_tracker.txt ---------------------------- Version numbers are stored in: (1) .iss file (influences setup display, Control Panel) (2) .rc file (About box) (3) g_strVersion (4) web site whatsnew.shtml (5) help (.hm3) Version history: 1.0 - Most development here. 2.0 - From point of introducing "default ODBC DSN" system, 15 Aug 2002. - 22-Sep-2002 Integrated HTML Help 2.1 - Added progressive ratio schedules. 2.2 (4 Nov 2002) - FR1 with delayed reinforcement - timeout option on all schedules (implemented immediately following primary reinforcement), primarily for Dan Hutcheson (using progressive ratio schedules with drug) - XML parameter storage - records nosepokes in event record 2.3 - missing UpdateData(TRUE) bugfix 2.4 - changeover delay (COD) e.g. "The COD was implemented as follows: if a subject pressed lever B, it could only be reinforced if more than 2 s had elapsed since it last pressed lever A (and vice versa). The RI schedules could still set up reinforcement during the COD, but the subject could not earn that reinforcement until the COD had elapsed." In general, if you're in a COD, your response is recorded but doesn't go towards the schedule. Ticks still go towards the schedule. 2.5 (4 June 2003) - bug discovered by Dan Hutcheson: Progressive ratio schedules do not terminate after a certain time has elapsed since the last response. Due to failure to call CheckForStopping(). Fixed: CheckForStopping() called at every clock tick. (All schedules have clock tick running.) Turns out there was another bug as well; if reinforcement (e.g. pump) was still happening when a reinforcer number limit was hit, the reinforcement got cut short. CheckForStopping() rewritten, together with a bit of the input parser. - CReinforcementSchedule::Description() changed to mention this parameter 2.6 (14 July 2003) - horiz scroll listbox - about button 2.7 (22 Nov 2003) - writes version number and compilation date to summary file 2.8 (11 Mar 2004) - PROGRATIO_DOUBLEINCREMENT schedule - option to turn traylight on until reinf collected - PR schedules can end based on time since last response, not reward 2.9 (21 Mar 2005) - rebuilt to take advantage of Mersenne Twister random-number generator in WhiskerClientLib - likely non-independence of randomness of two concurrent RT schedules noticed by Yann Pelloux (see code) - option for timeouts on one schedule to apply to both: m_bTimeoutsApplyToBothSchedules 3.0 (8 Mar 2007) - easier compilation for users 3.1 (29 June 2007, MRFA) - Inserted for Yutaka Kosaki- Option *not* to reinforce the first lever press of each interval schedule. 4.0 (12 Jan 2009, RNC) - Server default changed from "loopback" to "localhost" (Windows Vista compatibility and more general standardization). 4.1 (24 Mar 2009, RNC) - Support for Campden antique levers (exactly as in ImpulsiveChoice task) 4.2 (5 Sep 2013, RNC) - Option to remove 10-second hard-limit safety timer for non-IV pump use (m_bDisablePumpSafetyTimer). - Conversion for VS2008. 4.3 (23 Mar 2014, RNC) - Reinforcement-associated CS lights. m_bLeftLight, m_fLeftLightDuration_s, m_bRightLight, m_fRightLightDuration_s. Needs corresponding new database fields: SimpleSchedules_Config.LeftLight SimpleSchedules_Config.LeftLightDuration_s SimpleSchedules_Config.RightLight SimpleSchedules_Config.RightLightDuration_s Needs new output devices: LEFTLIGHT RIGHTLIGHT 4.4 (3 Sep 2014, RNC) - Hammond contingency schedule. - Code sharing from MonkeyCantab: ReinforcementSchedule.h ReinforcementSchedule.cpp Framework changed accordingly. - Bugfix: enabling/disabling left light/timeout options in dialogue box was slightly wrong 4.5 (14 Apr 2015, RNC) - RPI schedule - Rebuild to use WhiskerClientLib 4.62 with new socket code. - Define WINVER as 0x500. - Compile cleanly with full warnings. THINGS TO DO: ============