ApplCore Revision History ------------------------- Version 1.00 June 1992 ApplCore conceptualised - Development started Aug 1992 Cosmetic version for demonstration purposes Nov 1992 Commenced implementing Procion hooks Dec 1992 First non-network router control simulations Feb 1993 Consolidation of router control and panel development 25/03/93 Corrected minor bugs in TextGet & TextRemove Added TextTransfer and NumberTransfer 30/03/93 Modified ExecFile 04/04/93 Added FLIC support commands 20/04/93 Correct List Get bug 18/05/93 Modified WM_COMMAND handler 10/06/93 Hooked in IAC support functions Added Text Edit command Added memory functions Added UMD function 20/06/93 Added neural network hooks & functions 01/07/93 Completed IAC functions with new IAC bug-fix release 16/07/93 Modified UMD function to justify text 18/08/93 Added integral UMD driver Add : Text Edit 'SLASH' command 25/08/93 Test version using NetBIOS for IAC 05/09/93 Consolidated NetBIOS as IAC transport 24/09/93 Added audio commands : record, stop & MCI 22/10/93 Consolidated netbios routines into NETBIOS.DLL 29/11/93 Bug fix to UMD support 11/12/93 Commenced adding BBC network router control protocol 15/12/93 Consolidated BBC netwrork protocol and interfaced to CSI task 11/01/94 Added support for BBC GPI driver and removed Procion i/f 01/02/94 Added support for Info Driver in place of Infoman 07/02/94 Removed Procion support functions Version 1.01 22/02/94 Adder Router Source & Router Destination command 25/02/94 Added List Router command 06/03/94 Added Router Index command Version 1.02 12/03/94 Modified message exchange constant link to CSI All network commands now include WorkstationId 06/04/94 Added ExecWorkstation command 23/05/94 Bug fix to Router Crosspoint command 27/05/94 Added GPI File command Version 1.03 04/06/94 Increased memory stores to 3000 09/06/94 Added Exec Reboot command Version 1.04 01/07/94 Added Exec Workstation command Version 1.05 05/09/94 GlobalFree() bug fix to List Router command Version 1.06 19/09/94 GlobalFree() bug fix to Router Name command Version 1.07 22/10/94 Recompiled under Borland 'C' Added Router Database modification command Added Router Update command Version 1.08 20/01/95 Bug fix to Router, GPI and InfoDriver Registration commands 11/02/95 Optimised parser 22/03/95 Modified List Load and List Save commands to be able to use paths Added Jump Date and Jump Time commands Added VideoBlaster support Version 1.09 02/11/95 Added Jump String & Jump Instring commands Version 1.10 04/12/95 Added Text Split & Memory Find commands 06/12/95 Added Number Divide & Number Multiply commands 08/12/95 Added Memory Increment & Memory Decrement commands Added Exec Debug command and Debug box toggle Added Number Get & Exec Message commands 02/01/96 Bug fixes to Info File and Info Hardcopy commands 31/01/96 Added Memory Logic command 03/02/96 Added full filepath capability to AK, AP, AR, EA, DO, EL, FO & TW commands 07/02/96 Modified List Erase command to enable multiple deletes of a given string 22/02/96 Maximum panel size is now 1280 x 1024 28/02/96 Bug fix to Exec Application command 13/03/96 Bug fix to Exec File command Version 1.11 28/04/96 Register commands now have optional index variable Added support for 8 character UMDs Version 1.12 25/06/96 Added 'Control Name' and 'Control Text' functions 28/06/96 Added 'Memory Read' and 'Memory Write' functions Version 1.13 Added ExecUnyield function Bug fix to ExecQuit command Version 1.14 05/11/96 Exec Message command rewritten Now closes down when CSI sends a closedown message Version 1.15 18/11/96 Neural network support removed Text Divide and Text Quantity commands added Added List Find Version 1.16 Bug fix to Jump Date command Version 2.00.00 30/01/97 Development commenced based on version 1.16 JumpString command changed to Jump Compare Exec Jump command change to Jump Offset Added Jump Always command Added Jump Subroutine command and routines Control Blitz and Control Salvo removed ExecVariable now executes a single command Parser rewritten Maximum panels is now 64 Workstation ID is now in CSI.INI Version 2.00.01 15/02/97 Added Exec Get command Now passes command line variable to S$ and S% on start up Added String Find, String Get & String Put commands 17/02/97 Added String Set, String Read & String Write commands Bug fix to Router and GPI CSI i/f routines previously re-using variables Bug fix to Jump Return command 24/02/97 Added 26 more integer and string under lower case a-z 25/02/97 Router Modify command changed to include BBC_DBASECHG message Added Device Profile command to signal to all CSI's to create default database Modified Listbox commands to be able to use Combo boxes Added breakpoint commmand Version 2.00.02 18/03/97 Error boxes now show ApplCore version. Added Router Query, GPI Query and Info Query commands Bug fix to List Get Version 2.00.03 02/04/97 Bug fix to Number Transfer command Buf fix to Exec File command 11/04/97 Added Memory Ascii and Memory Move commands 28/04/97 Added Number Format command ApplCore 2 will only accept CSI V2.00 or later Subroutines can now be called from the STARTUP stringtable Lower case variables can now be used in last parameter to Router Register command List Quantity, List Up commands added List Item modified to allow positioning of highlighted item in middle of listbox 02/05/97 Added Device Enable command 08/05/97 Modified Router Name command to cope with larger databases Modified Debug Breakpoint box to have 'Cancel' option 13/05/97 Bug fix to Router Modify command Version 2.00.04 20/05/97 Bug fix to ODS command 21/05/97 List Clear & List Delete functions tidied List Get function expanded to cope with lowercase variables 27/05/97 Bug fix to Exec Variable command 03/06/97 Added Jump Goto command 15/07/97 Added Control Focus and Control Return commands 18/11/97 Added 'String Timecode' command Added 'Number Convert' command 20/11/97 Modified 'List Router' command to have optional comma delimited list of indices Version 2.00.05 25/11/97 List Router command allows single entry in the optional list 26/11/97 integer storage changed to be long integers Can now be used with CSI 1.XX, warnings issued when commands not supported Version 2.00.06 22/12/97 Selective registration functions added 12/01/98 No longer requires printer driver to be loaded 13/01/98 Bug fix to integer memory functions to handle long integers Version 2.00.07 14/01/98 Bug fix to GR, IR & RR commmands to extend RetVar to lowercase variables Version 2.00.08 20/01/98 Added ExecNameDay command Version 2.00.09 28/01/98 Debug window now split into 2 seperate windows Version 2.00.10 30/01/98 TSL UMD protocol added 04/02/98 UMD virtualisation option added Version 2.00.11 25/02/98 Bug fix to RQ command Version 2.00.12 04/03/98 Bug fix to ListBox/ComboBox detection 06/03/98 String AppName command added Version 2.00.13 12/03/98 Bug fix to command buffering switch on RC, GS and IW Changed fields to frames in 'String Timecode' command Version 2.00.14 17/03/98 Added BBC_CLOSEWARNING handler to execute CLOSEDOWN stringtable Bug fix to prevent com ports being closed on exit when not valid Version 2.00.15 26/03/98 Added support for HAUPPAUGE Win-Tv card Version 2.00.16 08/04/98 Added 'CASE' option to Text Edit command 17/04/98 Bug fix to ACPrfu_Init() when no printer driver loaded Version 2.00.17 24/04/98 Bug fix to List Item command Version 2.00.18 01/05/98 Bug fix to List Get command to return NULL if nothing selected Version 2.00.19 15/05/98 Bug fix to integer memories Version 2.00.20 23/06/98 Control Text command can now use all 64 panels Version 2.00.21 06/07/98 Added text eXchange command System Timer reintroduced as XT Version 2.00.22 17/08/98 Bug fix to UmdSup_Cycle to take away 4 UMD per chain testing limit Version 2.00.23 27/08/98 Bug fix to String Read command to strip carriage returns Version 2.00.24 24/09/98 Enhanced 'String Timecode' with ADD, SUBTRACT and TOD functions Version 2.00.25 16/10/98 Text eXchange modified to change '/' to '\' Version 2.00.26 14/01/99 Modification to MF command to allow to equal Added 'String List' command Version 2.00.27 21/01/99 Added String Message() command Version 2.00.28 08/02/99 Added HTML command set HC, HO & HW Added Video Write command Bug fix to text write command Version 2.00.29 04/03/99 Modified String List to accept string memories as well as integers 10/03/99 Modified Text eXchange to be able to change colons to semicolons etc Version 2.00.30 12/03/99 Modified EC command to allow panel to be moved with caption bar Version 2.00.31 22/03/99 Bug fix to Owner Draw bitmap functions Version 2.00.32 14/04/99 Added String Date command Bug fix to TR command to be able to remove spaces Version 2.00.33 01/06/99 Bug fix to ML command give access to full range of integer memories Version 2.00.34 09/07/99 String memories increased to 4096 Version 2.00.35 18/07/99 CvtFramesToTCode() and GetTODTCode() now return dots instead of colons Version 2.00.36 25/07/99 Bug fix to Text Split command Version 2.01.00 19/07/99 Added eXternal driver control commands PROC_STACK_DEPTH reduced from 1000 to 500 Number of parser variables reduced from 10 to 8 max string length of parser variables increased to 300 Bug fix to CSI_DISCONNECT value M2C support removed Version 2.01.01 02/11/99 Filepath normalising added to HO Bug fix to NormaliseFilename() Modifications to make print functions reliable in ACPrfu_StartDoc(), ACPrfu_NewPage(), ACPrfu_EndDoc() 10/11/99 Bug fix to ID command 11/11/99 Bug fix to LH command 12/11/99 Bug fix to LE command 15/11/99 Added Device Status command Modificaiton to XP command 16/11/99 Added Device List command Version 3.00.00 14/06/00 Now 32 bit application using BNCS32 messaging Added AppleX support (although disabled pending AppleX release); Added debug window Modification to Jump commands to allow continuation on the same line as the jump command Added List All command Added Key Register and Key Unregister commands Bug fix to memory alloc for List Router command Modification to SL command to allow NULL delimiters Now posts WM_ACTIVATEAPP messages to self as BBC_ACTIVATEAPP to prevent interuption to stringtable Modified ACParser_ClientStr() to post unhandled messages straight back to host EH command now allows application to be moved between front and back in the Z order Added 'File Directory' command Added 'Exec Override' command and handler Modified ACXtext_TextLoad() to use GetArguments() Added built-in stringtable editor 3.01.00 28/02/05 Recompiled with latest BNCS32 message cracker Base for upgrade to ApplCore 2.04.09 3.01.01 12/04/05 Bug fix to XP command Added List All command Bug fix to XC, XS and XW commands Modification to Jump commands to allow continuation on the same line as the jump command Bug fix to memory alloc for List Router command Modification to SL command to allow NULL delimiters Modified TS command to optionaly split into either integer or string memories or both Now allows Ids to execute lines 32001 to 32766 EA command modified to display reason for launch failure Bug fix to LE commmand Padded commands with null paramters before applying to LF and RD commands Bug fix to make MAXDBNAMESIZE 256 Added Text Filter command to remove CRLF and single quotes from strings Command line variable now applied correctly to S$ on start up. Added WindowHasSameName() Modification to TX command in ACXtext_TextXchange() Bug fix to Number Format command Long standing bug in ET command fixed. Now properly stops timers. Added ListBlankErase command Added List eXtract command Added Control Size command Added Text Horizontal Tab command Will now allow multiple instances when command line parameter is supplied Bug fix to ACDxSup_IdRevInfo() Bug fix to ACParser_ClientStr(); About box now contains panel version number Added option to INI file for outputting parser trace to OutputDebugString() Added fast closedown option to INI file 3.01.02 12/05/05 Bug fix to EF command 3.01.03 12/05/05 Correction for problem with CI (Control Id) command. Was using Set/GetWindowWord(). Changed to use Set/GetWindowLong() required for 32bit operations. 3.01.04 04/07/05 Added System Timer to call ACMain_SystemTimerCall() 3.01.05 07/07/05 Speeded up System Timer to 50ms 3.01.06 13/07/05 EQ 100 now always quits 3.01.07 14/07/05 Added String Environment command 3.01.08 10/08/05 Compiled with all debug options on 3.01.09 15/08/05 Bug fix to LS command 3.01.10 16/08/05 Now exits straightaway if CSI is not present 3.01.11 18/08/05 Test version to localise ACSTMSup_SetMem() problem 3.01.12 30/08/05 Memory size changes. Noted a few problems regarding char buffers, changed all to 256 or 513 in size and added definitions. Steve Jensen 3.01.13 02/09/05 KEYREGTIMER handler reinstated in main window procedure Cbncs_strtok class now used for stringtable parser 3.01.14 08/09/05 Corrections for problem in Cbncs_strtok::Tokenise() and a ">=100" correction in ACXexec_ExecQuit(). Steve Jensen 3.01.15 12/09/05 changed GlobalAlloc()'s to 256. or size + 256. buffer space to get past issues with various RC's from Paul R. 3.01.16 13/09/05 Added support for detecting defective STRING's -- indicative of a failure in the compiler or linker. 3.01.17 13/09/05 Trapping on bad strings data ala Paul R's GFX_1.RC 3.01.18 15/09/05 improve trapping algorithm - allow all alpha/numeric/spaces - SPJ Addition of Min/Max to ML function 3.01.19 26/09/05 Enhancement to the Unknown command pop-up. 3.01.20 28/09/05 Correction to ACSTMSup_SetMem() routine. Only free memory not NULL memory pointers. Disable Debug window on Win98/Win95 systems. 3.01.21 29/09/05 Added debug text format printing (ala Paul R.). thus: e.g. 30000, "EC 1" 30001, "EB 1 640 500:PI 1:PS 1" 30002, "ET 1 1000 900 901" generates: Trace 30000: EC 1 Trace 30001: EB 1 640 500 Trace 30001: PI 1 Trace 30001: PS 1 Trace 30002: ET 1 1000 900 901 3.01.22 19/10/05 IP/IR/IW now filter for device > 999 (MAX_DEVICES) to prevent V3 CSI from crashing ! Emits debug msg to OutputDebugString(). Correction for LS and LH - sscanf() with a NULL target 1st parameter causes BIG exception. Corrected "EQ" command problems -- was unloading Bncs DLL while a thread of execution still existed throught the DLL -- boom, exception. Extensive debugging on Win98 with MSFN VC++ using Emulate.RES discovered yet more issues with wrong size memory buffers associated with the use of BNCS32SendMEssage() - causing subtle failures. Expanded a large number of buffers and using "CBDATA_SIZE_POINTER" def. for such buffers (513. in size). All panels run on Win98 (with debug dialog operating). Re-enabled Debug dialog for release ApplCore version. Correction for MA command problem reported by Paul R. 24/10/05 Added LT & LV commands from Simons V2 source code. 3.01.23 28/10/05 Correction for EF problem introduced in V3 (corrected using V2 code). 3.01.24 31/10/05 Correction for EF command problem - unwound above "fix". It was incorrect -- removed strtok() -- RC file PanelDTV.rc had a BUG ! P$ was not initialized. 31/10/05 Correction for LG command problem - SendMessage was failing causing a 0 to be returned to the JO command. 3.01.25 01/11/05 Correction for handling "--" lines. "--" lines are used because "" lines are not allowed in the 32bit Borland env. (creates defective .RES file) and MSFT doesn't like such either. 3.01.26 02/11/05 Correction for IW broken. 3.01.27 15/11/05 Correction to ACPanel_DialogProc() function prototype. 3.01.28 17/11/05 Added comms support library to allow re-enabling of UMD commands 3.01.29 21/11/05 Added String Hex command 22/11/05 'iUmdSize' entry renamed 'UmdSize' Now closes down if no STARTUP line found when error boxed is acknowledged Trace now expands variables 3.01.30 06/12/05 Uncommented-out the DestroyWindow, in ACPanel_Destroy() so that BNCS_CCxx libraries are notified that ApplCore is shutting down the window of interest -- allows the DLL's to deregister / clean up. 3.02.00 23/11/05 Added resilience message handlers Added Device Mode command Added Exec Status command Function prototypes for WndProcs changed 3.02.01 06/12/05 Uncommented-out the DestroyWindow, in ACPanel_Destroy() so that BNCS_CCxx libraries are notified that ApplCore is shutting down the window of interest -- allows the DLL's to deregister / clean up. 3.02.02 09/12/05 Masked wParam in ACPanel_DialogProc() to filter off HIWORD Paint problem fixed in diagnostics window EA Command : SendMessage() changed to BNCS32SendMessage() ER command modified to include LOGOFF and KILLCSI options 3.02.03 12/12/05 Bug fix to filter out listbox notifications when receiving focus Bug fix to ACXroute_RouterUnregister() default Min Max range is appended. 3.02.04 12/12/05 Modification to ER command to ensure Win9x and NTx compatibility 3.02.05 21/12/05 Added List Null command 3.02.06 06/01/06 Correction for ER - reboot problems on NT/XP - now calls AdjustTokenPrivileges(), etc. to get priv. on NT systems. 3.02.07 11/01/06 BBC_DATABASECHANGE, BBC_NETTXRXSTATUS, BBC_DEVSTATUSMSG now processed via FIFO 3.02.08 13/01/06 Bug fix to new BBC_DATABASECHANGE handler 3.02.09 24/01/06 Bug fix to ACXumd_UmdPutTslNormal() Began implementing 32 bit video overlay support 3.02.10 24/01/06 Bug fix to ACXumd_UmdPutTslVirtual() & ACXumd_UmdPutProbel() 3.02.11 06/02/06 Completed initial video overlay support in Video Enable and Video Disable commands 3.02.12 10/02/06 Added Text Break command 3.03.00 27/02/06 Now uses GetConfigDirectory 28/02/06 Modified EA command to use CreateProcess() and enhanced error message reporting 01/03/06 Added Exec eXecute command 3.03.01 10/03/06 Modification to XR command to use BBC_CTRLCONNECT32 Modification to ACDxSup_Disconnect to use BBC_CTRLDISCONNECT32 MAX_EX_DATASIZE set to 1025 GetConfigDirectory() now GetBNCSConfigDirectory() Added GetBNCSSystemDirectory to get path to DLLs for LoadLibrary() to use 3.03.02 12/04/06 Fix to EF command 3.03.03 10/05/06 Increased acTrace to be MAXSTRINGSIZE*2 in GetArguments() 3.03.04 11/05/06 EG command now appends '0' as a default offset 3.03.05 19/05/06 Extra parameter added to EA command to inhibit error box on load failure 3.03.06 31/05/06 Added String Interval command 3.03.07 15/06/06 Bug fix to XR command to initialise 32 bit messaging correctly 3.03.08 28/06/06 Revertives as a result of XR command now passed through fifo Can now scroll back debug window 3.03.09 12/07/06 Bug fix to prevent ODS call with string length greater than 256 bringing up message box 3.03.09a 18/05/07 branch release for DIRECTV Corrected several missing changes to support GetBNCSSystemDirectory() in files acxexec.cpp and acmain.cpp. 3.03.09b 26/02/08 branch release for DIRECTV -- Correction to EF for directory relocation. 3.03.10 19/07/06 Bug fix to SI command 3.03.11 01/09/06 Maximum string sized in creased from 128 to 256 in ACXexec_ExecApplic() Added third parameter to the EA command for optional translation of the escape character EX command no longer returns !Error! Added 'String Compose' command 3.03.12 03/10/06 Fix to JD command EA command no longer converts ';' to ':' when in 'no translate' mode EV now parses a line rather than a single command. 3.03.13 10/11/06 Restored functionality to stringtable editor 3.03.14 13/11/06 Pause on left mouse click added to doagnostic window. 3.03.15 21/11/06 Entry in APPLCORE.INI if enables allows Sytem Menu exit 3.03.16 24/11/06 Bug fix to ensure EA command compatibility prior to 3.03.11 3.03.17 29/12/06 Bug fix to correct fifo revertive handling for control externals WAKEUP stringtable no longer called if application closing down 3.03.18 02/01/07 Control external intercept modified to uses 32 bit messaging for GRDs & GPIDs 3.03.19 09/01/07 Added QH command to query dialog handle 3.03.20 14/01/07 Bug fix to prevent exception when JD parameters contain NULL strings 3.04.00 17/01/07 Bug fix QH command to filter out of range parameter numbers Modified QH command to return backpanel window handle if panel '0' specified Modified PM command to allow backpanel to be moved if panel '0' specified Implemented PZ command (Panel siZe) so that panels can be sizes as well as moved Implemented QP command (Query Parent). QP A% B% returns the parent window of the HWND from A% into B%. Implemented QD command (Query Desktop). QD X% Y% returns desktop screen width, height into X% and Y% A01 - 18/01/07 SC modified to not lower the case of the format string Bug fix to TS command to prevent garbage appearing in string memories when NULL string supplied SE modified to convert search string to uppercase A02 - 19/01/07 Bug fix to PZ and TS commands A03 - 20/01/07 Implemented QC command (Query Child) QC A% B% C% returns handle of control B% on panel A% in C% 3.04.00 29/01/07 Release of 3.04.00 - SD - BCNU! 3.05.00 01/02/07 Build from CVS 3.05.01 06/02/07 Parsewr commands now go to the debug stream even if Diagnostics is not turned on 3.05.02 23/02/07 Change the EC command back to historic function. Added EC 4 & 5 3.05.03 27/02/07 Bugfix for the SC command -- memory over write bug reported by Paul Ratcliffe 3.05.04 27/02/07 SYSTEMDELAY was 50 changed to 5 to improve performance - Simon recommended change Feb-2007 3.05.05 02/03/07 Change the EC command back to correct function - WM_WINDOWPOSCHANGING is once again handled. 3.05.06 02/03/07 Change the EV command - Recommendation from Simon is in acstmsup.cpp to raise STM_MAXMEMORIES to 32769 and in applcore.h to change EXECVARTEMPMEM from 4097 to 32768. 3.05.06 05/03/07 Changes applied to the EC command. 3.05.07 16/03/07 Changes the EC command to support the correct function of EC. Added EC 4 and EC 5 requested function - requested by Paul Ratcliffe. working on EC EB and friends -- this is where the 20 pixel offset correction was introduced. added PZ command support 19/03/07 Changes the AP command added line number vector for file missing. 19/03/07 XT command added back into V3. Was removed V2 -> V3 port. 3.05.08 21/03/07 Changes to printer support. Printer support on some machines causes a slow start up. PrinterSupport =0 in Applcore.ini disables all printer support. Changes to the ParserTrace -- outputs all info to OutputDebugString() also. 3.05.09 02/04/07 Added ED support modes: 0/1 for Variables, 2/3 for Debug (bit 0 below), 4/5 for OutputDebugString (bit 1 below), 6/7 for Parser Trace (bit 2 below), 8/9 for Diagnostics (bit 3 below) Correction of debug window scrolling memory over-write problem reported as corrupted data in InfoDriver polling -- reported by Dave Smith CCA 3.05.10 05/04/07 Correction for initial state supporting the ED command. If debug state is set in the INI file and when "debug" is checked in the menu these are set: DEBUG_DEBUG_CONTROL_BIT + DEBUG_OUTPUT_DEBUG_STRING_CONTROL_BIT 3.05.11 26/04/07 Previous edition had a few problems. This edition adds the menu and .INI file entries for all of the new ED modes. Bug fix to SI command for midnight wrap around. Added certain ApplCore.ini file string defs to ApplCore.h file Corrected several missing changes to support GetBNCSSystemDirectory() in files acxexec.cpp and acmain.cpp. 3.05.12 30/04/07 TimeStampStartup APPLCORE.INI file emits DIAGNOSTIC_USE_ONLY as default. 3.05.13 30/04/07 ET 1 starts up with T$ and U$ set to current time. 3.05.14 01/05/07 bug fix for WAKEUP & SLEEP JS in wakeup lines causing the following lines to not execute. Now setting stack and stack index to maintain "iInSequence". 3.05.15 02/05/07 bug fixing in ED command 3.05.16 22/05/07 bug fix in EV command. 3.05.17 23/05/07 bug fix in EV command. Corrected in sequence flag issue. 3.05.18 31/05/07 enhancement of the CD/CE command. Added range parameter. TS & SL cmd bugs fixes RN correction 128 name limit to 256 (236). 3.05.19 18/06/07 Correction for TS command - re: Gile Moss CCA 3.05.20 26/06/07 Correction ApplCore startup when CSI is not in Client Mode - re: Dave Smith CCA 3.05.21 29/06/07 Correction for problem identifed in UMD system with UE & UP commands - identified by Paul Ratcliffe. 3.05.22 29/08/07 Correction for IR not functioning with A% as the index target var. 3.05.23 28/12/07 bug fix for problem developed in the fix for WAKEUP & SLEEP JS back in version 3.05.14. Now setting "iInSequence" back to 0 and also the start up "wakeup" first time run problem corrected in V1/V2. (folded in to this version from 2.05.20 05/12/06 Fix to prevent WAKEUP stringtable being called on application start). 3.05.24 05/03/08 Adding VE command support for reading the INI file at each VE execution. Suggestion from Stuart Gandy. Correction for LR command - bug '0,1,2,' reported by Robert Brown (SCAR) 3.05.24 05/03/08 Adding VE command support for reading the INI file at each VE execution. Suggestion from Stuart Gandy (our customer) Correction for LR command - bug '0,1,2,' reported by Robert Brown (SCAR), added 3,4,5 (same as 0,1,2 but no-case compare)... Enhancement to LF command per request from Robert Brown (SCAR). 3.05.24 05/03/08 Correction for SA command - bug reported by Robert Brown (SCAR). SA always does an upcase on the workstation/application name before it is returned. 3.05.25 25/03/08 disabled "timestamping" 3.05.26 10/04/08 merge of DIRECTV changes (Pretty minor) Added support of navigation from V2ApplCore (2.05.15 17/03/06) Modification to KR handler to allow navigation keys to return string data. 3.05.27 14/07/08 Correction for LG command problem paired with the issue in BNCS_CC17.DLL. The correction in version 3.01.24 31/10/05 was incomplete. 3.05.28 17/08/08 Removed old 16 bit ApplCore.def file Added Amazon UMD protocol from V2 Modified XC, XS and XW commands to have optional parameter to set paramters without network. update iInterceptData changed to be long int Changed UMDProtocol config entry to use acPath[] instead of APPLCORE.INI 3.05.29 25/08/08 Modified XR command to use normal SendMessage first and then connect again using 32 bit direct. This overcomes the problem whereby broadcasting 32 bit messages causes probs in some MS apps like Outlook 3.05.30 05/09/08 Added INI file parameter to optionally cycle Amazon UMD protocol 3.05.31 21/09/08 Bug fix to CD and CE commands for when Min/Max range not specified. Bug fix to JD command to handle '-' 3.05.32 26/09/08 Bug fix to XD command to allow one character strings to be passed 3.05.33 22/10/08 Bug fix to CN command allows max character strings to be passed from data bases. Was previously limited to 20. Was size limit of 20 from V2ApplCore. Correction for ApplCore.INI file vars: "DebugMode" and "VideoCard" are not set to OBSOLETE if they do not exist in the ApplCore.INI file 3.05.34 02/12/08 bug fix for XR command & KR not getting lower case keystrokes A-Z 3.05.35 30/12/08 bug fix for CF command not functioning since version 3.03.14 -- see notes in file: ACMAIN.CPP 3.05.36 12/01/09 Enhancement of XR / UR command to be like the GR/IR/RR commands. Limit debug msgs in LG cmd. on LB_ERR returned by LB_GETCURSEL. 3.05.37 05/02/09 Implementation of a scheme of limiting the number of panels running i.e. "resource management for EK & EQ. Start up delays 500ms then runs a through the Z order of ApplCore panels - limiting to ApplCore.ini:MaxExecWindows, default is: 24. Correction for QD parameter crashing bug. Correction for CF and control issues not fully sorted in version 3.05.35 This version only released as a series of "test" versions. SD fix for leap year issue with 00-Jan-2009 first date after leap year. 3.05.38 06/02/09 Default Workstation number no longer set to -1 in CSI.ini, rather set to a value of 999 (MAX_ID). 3.05.39 12/03/09 Additions for Keyboard KR support. Various Fn keys and special key mappings. Added "EM" command parameter three, if value is 1, then puts up a MessageBox() 3.05.40 27/03/09 Corrections for MR & MS, very old V2 applcore issues, simple changes. Correction for QD parameter crashing bug, which did not get included in the version 3.05.37. Time stamping disabled by setting default to zero in ApplCore.INI file. (* special builds for W1 diagnostics *) 3.05.40a 24/06/09 Addition of diagnostics for FIFO levels 3.05.40b 25/06/09 Addition of file logging for FIFO levels and HWM 3.05.40c 26/06/09 Bumped revertive FIFO size from 1024 to (1024 * 10) 3.05.40d 29/06/09 Revertive FIFO size reset to 1024, corrected bugs in FIFO incr./decr code. 3.05.40e 06/07/09 Corrected bug in read FIFO incr./decr code. 3.05.41 15/05/09 Corrections for XP/XR & TB (very old V2 applcore issues), simple changes. Correction for problem noted in MM by Paul Ratcliffe. Correction for problems noted in EQ by Stuart Gandy. EQ 0 should not immediately exit. Another correction for EQ -- using magic number for response to BBC_IS_APPLCORE_WINDOW APPLCORE_CONFIG_MAGIC. 3.05.42 08/06/09 Enhancement to Registration commands RR / IR / GR, added Correction for EH issue -- show top window after an EH 4098. Added SQ command to query for running exec name. Added function type 2 to EX command. 3.07.03 02/03/11 KR support bug fixes for wrong keycodes in modes 2 & 3. 3.07.03 28/02/11 Correction for LR error introduced with new LF support. bug 1929 3.07.04 03/03/11 KR support bug fixes for wrong keycodes in modes 2 & 3. 3.07.04 22/03/11 Correction for returned parameter bug in LF (bug 1992). 3.07.04 22/03/11 Changed SQ to use config directory rather than System directory (bug 1994). 3.07.05 29/03/11 Correction for LF command old style compatibility bug 2007 3.07.06 21/06/11 Added timestamp debug msgs in panel destroy. 3.07.06 08/07/11 Correction for LP command bug 2088 - removed crashing debug msg. Correction for TE command bug 2089 - added parameter validation & warning messages to debug when target is not a string variable, no longer crashes memory when string literal is passed as parameter. 3.07.07 25/08/11 Correction for JS in AC_CLOSEDOWN & AC_DATABASE vector -- preload the execution stack ..bug 2030 & 2105.. 3.07.07 26/08/11 Correction for bug 2112 EX parameter issues. 3.07.07 07/09/11 Correction for bug introduced in 3.07.06 associated with bug fix of TE command (bug 2089) which was mis-integrated. 3.07.08 07/09/11 Correction for bug 2117 - TS command failing to populate zero location memory. 3.07.08 08/09/11 Correction for bug 2112 EX - removed from 3.07.08 3.07.09 09/09/11 REMOVED correction for bug 2117 - TS command -- ROLL BACK TO ORIGINAL CODE. 3.07.10 09/09/11 Correction for bug 2112, EX - extensive rework of parameter handler/counting scheme. 3.07.10 12/09/11 Correction for bug 2117, TS command failing to populate zero location memory when zero length string specified.. 3.07.10 23/09/11 Correction for bug 2130, KR command 0 & 1 does not need keyboard DLL (KeyHkAC.dll) 3.07.10 10/10/11 Corrections for bug 2112, EX additional issues noted by Paul Ratcliffe 3.07.10 11/10/11 Corrections for bug 2133, EF section names with spaces issues 3.07.10 21/10/11 Correction for bug 2117, TS command failing to populate zero location memory when zero length string specified.. 3.07.10 24/10/11 Another correction for bug 2117, TS command still whacking the integer memory location when zero length string specified - now corrected. 3.07.11 26/10/11 AC_WAKEUP stack trace is now under control of the INI var OutputParserStack 3.07.11 27/10/11 Correction for bug 2112, EX additional issue noted by Paul Ratcliffe 3.07.11 03/11/11 Another correction for bug 2112, EX additional issue noted by Paul Ratcliffe 3.07.11 10/11/11 Enhancements work for Bug 2134, AP audio curtailed -- adding audio thread scheme. 3.07.11 16/11/11 Another enhancement bug 2112, EX performs std. path searchs for DLL 3.07.11 17/11/11 bug 2163, EQ 1000, Brian Walton wants a really fast shutdown 3.07.11 26/11/11 Another correction for bug 2112, EX additional issue noted by Paul Ratcliffe 3.07.11 26/11/11 Enhancements work for Bug 2134, AP audio curtailed -- corrected AM cmd 3.07.11 26/11/11 Provisioning for CodeBlocks building of AC 3.07.11 08/12/11 The correction for bug 2117, TS command did not get integrated from the 3.07.10 test release to the 3.07.10 release. The code changes are now included. 3.07.11 23/12/11 Integration validation build. 3.07.12 06/01/12 Correction for EM execution stack problem after messagebox loss of focus - bug 2180 3.07.12 16/01/12 Added Added test code scaffolding in TG (if/def debug code using GetWindowTextLength()). 3.07.12 21/01/12 Changed the names of the Debug.cpp emtry points to include "Debug_" in order to correct symbol name space issues for the VC6 debugger. 3.07.12 31/01/12 Correction to parameter parsing for parameters 5,6 & 7 in IR, GR & RR. Bug 2203 reported by Paul Ratcliffe 3.07.13 03/02/12 Bug 2198 correction for LG missing String return var over writing random. Adding filter code. (to LG, LX, NF, TR (Was on TE already). 3.07.13 04/02/12 Bug 2198 eval of params where target is NULL, is indicated as " WARNING: line:" rather than " ERROR: line:". 3.07.13 06/02/12 Bug 2205 eval of SC params where targets result in over size output result. Now length range check "WARNING: line: %d, cmd: 'SC' resulting string length exceeds 255. Truncating." Applied to SE and NL also. Bug 2207 eval of TL params where wrong syntax is used (TL 0 o%) crashes O$ - fixed 3.07.13 09/02/12 Bug 2119 EZ outputs formatted text like SC command feature request 3.07.13 10/02/12 Bug 2198 additional corrections for LG, LX, NF, TR, TE parameter validation, filtering, etc. Enhanced function in GetArguments() to do the work. Now trapping NON-ASCII characters in the string table. Had noted an apostrophe of -122 decimal. It was in the TL cmd and the parser did not find the literal string because of it. Now trapping with error msg in ACSTMSup_SetBoundStrings() . 3.07.13 14/02/12 Bug 2198 additional corrections for parameter validation -- parameter checking calls added to all commands. Added environment variables to enable/disable parameter inspection and warning & error messages. 3.08.01 15/02/12 Rolled version minor number given all the changes above. 3.08.01 19/02/12 Bug 2197 Sorted additional EM mode 0 + timer execution issues 3.08.02 21/02/12 Correction for warning message for IW command parameter 2. Correction for TL return string non-zero problem. Correction for CU command parameter inspection had "CN" in msg. Correction for DI command parameter inspection can be string or integer Correction for EE command parameter inspection 2nd param is a string. Correction for EX command parameter inspection 2nd, 3rd, 4th & 5th parameters. Correction for HD command parameter inspection param is string not numeric Correction for HW command parameter inspection had "HR" in msg. Correction for IR command parameter inspection 6th-8th params are optional. Correction for SA command parameter inspection had "SN" in msg. Correction for TW command parameter inspection had "TX" in msg. Correction for WF command parameter inspection had "WT" in msg. Correction for XU command parameter inspection had "XT" in msg. 3.08.03 22/02/12 Correction for TG got broken when debug switched off. 3.08.04 22/02/12 Correction for EM when no timer parameter is specified. 3.08.04 22/02/12 Correction for SE crasher I just happened to come across. Problem is when specified env. var. does not exist. 3.08.05 22/02/12 Correction for NB shift left or right zero, (1 >> 0) and (1 << 0) both were returning 0, should be 1 (the value). Bug 2221 3.08.05 05/03/12 Debug Variables Windows Height tweeked + 10 bug 2229 vars window not high enough (added 10) and added applcore.ini vars to aid in customization. Bug 2229 Correction for bug 2228 TS 1st parameter being zero length return 0 in the return memory. 3.08.05 07/03/12 bug 2205: Added parameter range evaluation of Numeric Memory parameters to MD, MF, MG, MI, ML, MM, MP, MR, MS, MW, SL, TS. Added asserts in memory alloc and lock of above cmds. Correction for MR command parameter inspection had "MP" in msg. 3.08.05 09/03/12 Added support for QF - bug 2233 - QueueFlush(), sends BBC_SENDQUEUEDCOMMANDS to csi32 -- requires at leastcsi32.exe version: 1.1.33, dated: 11/07/11 bug 2205: Added parameter range evaluation of Numeric Memory parameters to GR, GU, IR, IU, IW, RR, RU, SF, SG, SP, SR, SS, SW, XR, XS, XU, XW. 3.08.05 10/03/12 Added base line support for a Timer Thread - if/def'd out - supporting EM type 1 (window MessageBox). 3.08.05 12/03/12 AK with NULL filename specification cancels the specified "UP" or "DOWN" operation. Checking string length for AK, AP, AR, BP, EL, EM . XXXXX Now range checking PanelID, ControlID, Device Numbers & Data Base parameters for commands CA, CC. CD. CE, CF, CI, CM, CN, CR, CS, CT, DC, DD, DE, DG, DI, DL, DM, DP, DR, DS, DW, Hx series. 3.08.05 13/03/12 Now range checking Line Number parameters for Jx, Kx, Lx, Px, Qx cmds. Correction for NC sense of number to string need not check for NULL string. 3.08.05 14/03/12 Correction for iEnableParameterInspection & iEnableParameterInspectionMsgs was always set to 1 in acmain.cpp Correction for parameter parsing problem reported in bug 2203 regarding the use of variable A% in IR/GR/RR cmds. 3.08.05 22/03/12 Changes for resilience functionality support of Infodriver32 from Steve Lowe integrated into source code. Changes from Dave Yates using bncsif32 and BBC_COPYDATA integrated into source code. 3.08.06 03/04/12 Correction for Audio Thread play issue/crash when no filename passed. bug 2205: Added more string evaluation testing to commands. 3.08.06 10/04/12 ---> 18/05/2012: Memory corruption validation testing. Bug 2200 developing multi-column ListBox support across Lx commands Added "LO" command - multi-column aupport. for Version 3.09.01 3.08.06 12/04/12 Changes to XR command to add 7th parameter. bug 2146 20/04/12 added g_ prefix to most 'global' variables (additional cleanup & refactoring). 24/04/12 Added parameter inspection support in ACSUFU for optional numeric parameter. Added "TimeStampProfiling" applcore.ini var. and some support. 02/05/12 Working on ---> Corrections to the Audio system Ax cmds for play out of second speech panel from Stuart Gandy. 18/05/12 Corrections for bug 2250 IR error in dealing with optional [] parameter. IR/GR/RR revertives would crash A% if IdxRetVar% was not specified. This problem has been with us for a very long time -- since version 3.05.22 dated: 29-August-2007. 24/05/12 Correction in ND Quotent and Remainder returned vars were not being checked for existance so A% was being crashed if Remainder was not specified. 25/05/12 No longer checking for String parameters equal to NULL: EM, JC, JG, LG, LP, LT, NF, SD, ST, TB, TW, 3.08.07 08/06/12 Correction to LF error introduced in 3.08.06 - integration error. 3.08.08 29/06/12 Correction Panel ACPanel_Create() VC6/VS version only displays MessageBox on create failure when _DEBUG build. 10/07/12 No longer emitting a MessageBox for ACPanel_Create() when panel fails in MSFT version. V3Raman panel from Keith Knowles is the source of the problem. Bug 2286 10/07/12 Added return variable over-write protection to: EF, DI, DS, Nx, RD, TQ, XD. 17/07/12 Sorting EF problems in bugs 2216, 2235 & 2285 23/07/12 Parameter checking for RD was incorrect. Fixed. Added doc to Rx commands. 07/08/12 Correction / redesign of EF command - bugs: 2216, 2235, 2285 3.08.08 14/08/12 Pre-Release build. 3.09.01 08/06/12 Looking at EF issue in bug 2235 - releative path not working. Corrected problems in parameter inspection. Also tidied up the parameter inspection for parameter three -- checking for numeric variable present. Tidied a bit in the AP cmd, now using SC thread command instead of AS thread command to the audio tread system when stopping thread prior restarting thread using immediate mode. 09/06/12 Added NonQuotedStringLiteralFound parameter type to deal with non-quoted strings i.e. what happens in EF. EF parameters 1 & 2 ignore null strings. 11/06/12 Added more regression testing hooks. NF is now validateding parameter. 12/06/12 Added parameter protection to LG cmd - if Fourth Parameter is missing then it crashes vars. 13/06/12 If the STRING TABLE line is longer than 256 then message is emited... STRING TABLE lines containing special case single quotes characters 0x91 (-110) or 0x92 (-111) are flagged and converted to ASCII 39. (ASCII single quote). 15/06/12 Added parameter protection to MA, MF, MG & ML cmd - if RetVar Parameter is missing then it crashes vars. 15/06/12 Corrected a bug in SE with stale data in the return buffer. 21/06/12 Corrected a bug I found in SR: on EOF need to write the last buffer to the string memories: 22/06/12 Corrected bugs Lx cmds regarding returned vars - add checking for parameters specified so as to not over-write other not specified vars. 23/06/12 Added more regression tests for Lx cmds 24/06/12 Added still more regression tests for Lx cmds 26/06/12 Added still more regression tests Px cmds 26/06/12 Added still more regression tests Qx cmds 26/06/12 Added still more regression tests Ux cmds 27/06/12 Added still more regression tests Xx cmds. Corrected bugs Xx cmds regarding returned vars - add checking for parameters specifies as to not over-write other not specified vars. 28/06/12 Added still more regression tests Rx cmds. Corrected bugs Xx cmds regarding returned vars - add checking for parameters specifies as to not over-write other not specified vars. 29/06/12 Added still more regression tests Ex cmds. Corrected bugs Ex cmds regarding returned vars - add checking for parameters specifies as to not over-write other not specified vars. 29/06/12 Added still more regression tests FD cmd. Corrected bugs FD cmd regarding returned vars - add checking for parameters specifies as to not over-write other not specified vars. 01/07/12 Added still still more regression testing. 03/07/12 Testing bug changes of Lx implementation. 06/07/12 Added load time syntax checking full file / all strings loaded & inspected & repored for problems regarding over size length. 09/07/12 Sorting issues in Lx regression testing 10/07/12 No longer emitting a MessageBox for ACPanel_Create() when panel fails in MSFT version. V3Raman panel from Keith Knowles is the source of the problem. Bug 2286 10/07/12 Added return variable over-write protection to: EF, DI, DS, Nx, RD, TQ, XD. 17/07/12 Sorting EF problems in bugs 2216, 2235 & 2285 23/07/12 Parameter checking for RD was incorrect. Fixed. Added doc to Rx commands. 07/08/12 Correction / redesign of EF command - bugs: 2216, 2235, 2285 16/08/12 Correction of possible UserVar buffer overwrite in cmds: XG & XD, now limited to 256-1. 17/08/12 Corrected a problem in XR cmd with indexing g_dx[] - run-time crash in Borland only. 20/08/12 Corrected parameter range checking in XG, XI, XP cmd. 21/08/12 Debug windows can be up to 2048 x 2048. 3.08.08 22/08/12 Release build. 23/08/12 Added Jx zero case regression tests. 3.08.09 28/08/12 Corrections to the EF command. String length limit for EX return string parameter number five for function type zero. 3.08.09 28/08/12 Release build. 29/08/12 Added return variable over-write protection to: XT Corrected a param check bug in PV. Was looking at param 0 instead of 1. 06/09/12 bug fix typo in LF cmd, old search, case #3 not working (broken since Nov-2010 3.07.02). 06/09/12 Now building with Borland 3.52 compiler. 3.08.10 11/09/12 Correction for EF relative path adding extra back-slash i.e. "c:\some\path\\.\my.ini" 3.08.11 28/09/12 Correction for IS cmd, " is actually and I was checking the limits as a device slot limit instead of line numbmer limit 3.08.12 05/10/12 Correction for NB 'NOT' bug #2309. The mask was not being created and managed correctly 3.08.13 15/10/12 Correction for IR, RR & XR bug #2050. 15/10/12 Correction for XR bug parameter #8 (var array [7]) was not being evaluated as get args was only getting 7 vars not 8. 3.08.14 01/11/12 Added source file presence checking for IS, EL, HO, LL, LS, MR, SR, SW, and TW cmds. Correction for multiple IS cmds in subroutine not executing response vectors bug 2313. Now marking replies as "InSequence" and queued into the AuxProc as are other msgs from CSI. 3.08.15 19/11/12 Correction for parameter issues in LR cmd causing crash (classic strtok() & atol() NULL ptr issues), bug 2324. Correction for bug 2330, now checking for max router support destinations in RN in LAWO systems: 65535 (ROUTER_MAXDESTS_LAWO) 20/11/12 Robert Brown says the LAWO router works correctly in W1 / North project system with version 3.08.15 corrections to RN command. 3.08.16 08/01/13 Corrections to RI command should not have been range checking RetVar Corrections to Rx command to allow 0 and -1 indeces. -1 is expected to return a name of "---" from RN cmd. Correction of LR parameter check error msgs.. LR command parameter seven is optional. LF searching for null string returns found count of 0. Corrected LF problem with search type 3 not working. Corrected JG crash on zero length string parameter. Corrected MD crash on negative value index parameter. Corrected ES crash on router index parameter greater than max routers. 3.08.16 11/01/13 Release build. 3.08.17 29/01/13 Corrections to LL command range checking errors for parameters 2 and 3. Corrections to JG command - no crash on wrong parameter list. Corrections to JG command - The "crash proofing" changes applied are to handle parameter list evaluation problems, i.e. strtok() exceptions. 12/02/13 Bug 2350 - SL command issue with uninitalized memory. String Memories (g_hStrMem[]) were not initialized to zero length strings. String memory now allocated at init to size MAXSTRINGSIZE & zero length. Additional crash proofing for ID, IF, IG, IH, IL, IP, IQ, IS, IW, GF, GL, GP, GQ, GS, PI, PD, PR, PS, XG, XP (search for "protect against crashes" in the source code). Substantial additions to regression testing. Corrected spelling error in Umd Tsl Virtual support diagnostic message. 22/02/13 Updated the copyright date in About box info. 25/02/13 Corrected AP command documentation and V3 ApplCore parameter testing of parameters [] [] both of which have always been optional. 22/02/13 Updated the copyright date in About box info. 26/02/13 Corrected ET command documentation and V3 ApplCore parameter testing of parameters [] and [] both of which have always been optional. Changed parameter evaluation of NC with string source parameter. Null is allowed as the parameter parser produces a "0" conversion value. 27/02/13 Corrected CD & CE commands such that all specified ID's are checked for existance and a warning issued if missing in the series to . Panel and control ID parameters are now reported in "Panel does not exist" and "Control does not exist" messages. 28/02/13 Added env. vars. for setting position, height & width of EDITOR window. 01/03/13 Correction in TS command for errant warning msg, string and integer memory parameter equal to 0 is OK (no longer emit out of range error message). 05/03/13 Jx Line Numbers are optional and Jx cmds with LineNumberVars with a value of zero mean just continue (If line number is 0 then execution continues on same line). 06/03/13 Changed missing parameter error message to be more appropriate: "No Parameter found. Not string or numeric". Added line number to GetArguments() error msg. 3.08.17 28/03/13 Release build. 3.08.18 10/12/12 Corrections to TS command for corner cases of ",#,#,#" missing first number. Tidy up of Audio functions. 26/03/13 Changed MAXINTMEMORIES from 10K to 64K - bug 2361 27/03/13 Corrected issues in GetArguments() regarding very large composite string i.e. SC command: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.....0,0,0,0, 29/03/13 Added start up messages indicating number of IN and STR memories, etc. 01/04/13 Changed the regression test controls in ApplCore.ini to seperate enabled (previously was a bitfield scheme). 15/04/13 Added regression tests for Kx commands. 16/04/13 Added regression tests for Hx commands. 3.08.19 23/04/13 Release build. 3.08.20 08/05/13 Release build. version numbers were mismatched. 3.08.21 08/05/13 Changed version scheme such that the string definition "__AC_VERSION__" is only referenced in one place now, instead variable g_cVersionString is used. 28/05/13 Changes supporting Xx cmds changes (bug 2381). Changes to support addition of and parameters to the XC command and parameter to the XS & XW commands. Support for Xx command changes in regression tests. 3.08.21 24/06/13 Corrected MSFT build name to "V3ApplcoreMSVC.exe" in the RC files. 3.08.21 17/07/13 Removed the UpdateTallyTableOnly% parameter from the message sent in XC cmd. 3.08.21 17/07/13 3.08.21 is a test release sent to Steve Lowe for bug 2381. Message "Parameter error NON-ASCII character present." changes from ERROR to WARNING. 3.08.21 24/07/13 Correction for error in GetArguments() related to Trace information. Bug originated in the previous SC correction changes in 3.08.18. Enhancements to the regression test to cover this issue. Bug 2430 3.08.22 24/07/13 Correction to "ACMciSup_Closedown: Enter (called by MainCloseDown)" message - added applcore program name prefix. Added message to closedown in panel wm_command handler and note: Buttons must not use line #2 for the button target line number (string table line). When AllowSystemMenuExit is SET in ApplCore.ini and the button target line number (string table line) is 2 -- ApplCore (acpanel.cpp) sends PostQuitMessage() to the ApplCore instance. Note: the number 2 is the same as the Windows message "WM_DESTROY" which ApplCore assumes to be a WM_DESTROY message being sent to it 15/08/13 Corrections for XC command issues. Changes to XS & XW cmds per Steve Lowe. 3.08.22 14/08/13 Release build 3.08.23 15/08/13 Test release build for Steve Lowe. parameter omitted from msg BBC_CTRLCLIENTSTR parameters. 3.08.24 22/08/13 Test release build for Steve Lowe. parameter determines msg sent. in XC 3.08.25 27/08/13 Test release build for Steve Lowe. parameter determines msg sent. same foe XS & XW 3.08.25 04/09/13 Release build. 3.08.26 15/10/13 bugfix for bug 2475 NA missing third (results target) parameter not emitting msgs when parameter missing. 3.08.26 30/10/13 bugfix for error in debug msg parameter set "XS Sending message: " missing parameter so values is in error. 3.08.26 11/11/13 bugfix for bug 2484 XR problems with "ADD". 3.08.26 11/11/13 Release build. 14/11/13 Correction for missing line number parameter testing in XN command. Additional crash-proofing in XN cmd. Lots of regression test work in the Xx commands. 3.08.27 15/11/13 bugfix for bug 2491 ND cmd not detecting and reporting missing parameters. 3.08.27 06/12/13 Release build. 13/12/13 Work to support VS2005 / VS2013. Correction in CF cmd noted in regression test. CF with a -1 ID was causing a memory over-write of g_pRevFifo! Corrected bug in Parameter Parser: another buffer overflow case. 18/12/13 Correction of a number of Cx, Ex, Nx, Px & Qx commands crashers noted while expanding the regression tests. 23/12/13 Added internals monitoring counts. 03/01/14 Additional regression test range limits tests and checking in the code for: Bx, Dx, Ex, Fx, Gx, Ix, Mx, Nx, Px, Rx, Sx, Tx & Xx commands. Rx crashers included RM crashing (old) CSI using invalid range parameters. 08/01/14 Correction for screwed up refactoring of the g_iInterceptDevId values fetched in ACParser_ClientStr() bug 2504. 3.08.28 09/01/14 Release build for 3.08.28 18/02/14 Correction for error in correction bugfix done for bug 2484 (XR problems with "ADD"). 3.08.29 18/02/14 Release build for 3.08.29 04/02/14 changed MAX_JUMP_LINE_NUM definition from 32767 to EXECVARTEMPMEM (32768) because EV uses EXECVARTEMPMEM and there can be an Jx command on the EXECVARTEMPMEM line (so all Jx commands limits changed from 32767 to 32768). Correction to KU error logic. 3.08.30 23/09/14 Release build for 3.08.30 24/09/14 Correction of EH problem -- parameter filtering caused malfunction with EH 0 0 / EH 0 1. EH with PanelID os 0 is legitimate case. 3.08.31 24/09/14 Release build for 3.08.31 3.08.32 24/02/15 Correction for bug 2637. Uses V4 (environment vars) for location of config/system paths in preference to bncs_config.ini because of the difficulty in accessing this file in the root of the file system on some Windows Server OSs 3.08.33 20/03/15 Now reads workstation number from CC_WORKSTATION (if present) otherwise the original csi.ini location 3.08.34 09/06/15 Correction for Bug 2692. XW fourth parameter is optional, parameter evaluation should not complain if parameter is missing. 3.08.35 09/07/15 Optionally registers for BBC_NETTXRXSTATUS messages according to whether theres a line in the stringtable (32400) and whether the setting in CSI is enabled or not 3.08.35 08/02/16 Adds CH and CV (control show/hide) commands (development version) 3.08.36 08/02/16 Adds CH and CV (control show/hide) commands (development version) 3.08.37 08/02/16 Adds CH and CV (control show/hide) commands (development version) 3.08.38 09/02/16 Adds CH and CV (control show/hide) commands (release version) 3.08.39 26/07/16 Bug 2798 Correction for issues in LB command (noted a odd problem in LF after a LB commend). 3.08.40 28/07/16 Bug 2798 Correction for issues in LE command (noted problem in LF after a LE commend - same issue as found in LB). 3.08.41 29/07/16 Bug 2798 Correction for issues in LE command, multiple to be deleted did not work correctly after changes for version 3.08.40. ***************************************************************************/