'
' IcMaster
' V01.00  05.06.12 AD    new started up from imaster 00.36.
'                        + added base ABCL fw upgrade to work with IPAM102.
'                        + added in/out levels.
'                        + added keys/func. for groups 3 to 8.
'                        c chged web UI to new web UI look and feel.
'                        c chged keys mapped to new layout.
'                        ! fixed jump into call reject mode exiting unattended.
'                        ! fixed no key4 leds on entering auto-unattended.
' V01.01  25.06.12 AD    ! fixed web ui syntax errors.
'                        ! fixed bad combined group creation.
'                        + added partial support for A1000, just with A100 layout.
'                        ! fixed file messages streaming method.
'                        ! fixed unattended delivery for HDX using cmd 1.
' V01.02  04.07.12 AD    ! fixed web UI home page help syntax.
' V01.03  10.07.12 AD    c chged audio fifo cleaning, to reduce latency in IC mode, HD.
' V01.04  28.08.12 AD    ! fixed various web ui syntax errors.
'                        ! fixed first part of unattended sometime truncated.
'                        ! fixed last second of custom message truncated.
'                        c chged back to paging subsection after group targets selection.
'                        c chged incoming status routine, used only tmr safe vars.
'                        + added Annuncicom 100/200 allowed to work without USB pen.
'                        + added mechanism to exit for timeout on established call.
' V01.05  30.08.12 AD    ! fixed FD wrong displayed message on PS16 after getting 2 
'                          concurrent call requests.
' V01.06  10.09.12 AD    + added echo cancellation feature (AEC).
' V01.07  26.09.12 AD    ! fixed noise on local custom message using A-law 24Khz.
' V01.08  25.10.12 AD    c chged #110.09 paging/ic method using link.
'                        + added routines with link timoeut mechanism.
'                        + added PS16 selected group message.
'                        ! fixed incorrect custom message delivery timing.
' V01.09  31.01.13 AD    + added new debug trace preprocessor macroes.
'                        + added tuned rtp delay on vlsi1053.
'                        ! fixed #110.07, incorrect paging payload type.
'                        ! fixed #110.16, added BARP flags for extended timout checks.
'                        ! fixed #110.14, hands free mode, paging not closed re-pressing 
'                                button 1.
'                        ! fixed #110.15, PS1 + handsfree/HDX, no client status received, 
'                                exiting to idle
'                        ! fixed issue on gp6map$, typo error, was gp5map$ on stp load.
'                        c chged removed link for paging.
'                        c chged #110.21 PS16 keyboard / functionality changes.
' V01.10  11.09.14 ASI   ! merging #110.30 fix from AD: Master relay on ring not resetting 
'                          after unanswered call. 
'         22.10.14 ASI   ported important fixes from 00.36c:
'                        ! changed to light up destination LED (in case blinking was in off state)
'                        ! moved the paging button check at the end of paging state in order
'                          to have the destination mask recalculated before paging
'                        + added use of destination buttons as call answer button
'                        ported important fixes from 00.37c:
'                        ! fixed to blink the recording button LED when activated
'                        ! fixed to clear the corresponding bits in the destination map instead 
'                          of toggling  them (which might leave selected targets with unlit LEDS)
'                          at group button deselection)
'                        ! fixed to ignore irrelevant keys in idle, paging, and message recording
'                          states
'                        + added the feature to always reflect the actual selection map to the LEDS
'                          of the extension keys (id 17-112)
' V01.11  22.10.14 ASI   ported important fixes from v00.38c
'                        ! allow pressing target buttons in case of concurent calls 
'                        ! fixed blinking of the Unattended message button
'                        ! fixed incoming single target leds to blink in sync
'                        ! allow to reply incoming calls also with single target keys
'                        ! improved concurent 2 calls handling
'			 other fixes
'                        ! fixed "Accept Call" button LED also to blink when ringing
'			 ! allow "Accept Call" button only in case of incoming call to 
'                          answer and in active call state to close
' V01.12  23.10.14 ASI   ! fixed #110.32: ICmaster reboots when trying to play a message that 
'                          is not yet recorded
'                        ! fixed #110.33: No incoming audio from the client in intercom mode 
'                          if the master is configured to use multicast for paging
'         24.10.14 ASI   ! clean up some syslogs and comments, and disable the debug mode  
' V01.13  10.11.14 ASI   ! fixed to properly detect iclient connection loss in intercom mode
'                        ! fixed to always turn off the "answer" button LED when going in
'                          idle mode     
' V01.14  16.01.15 ASI   ! fixed #110.39: Group 1 selection key not ignored in call state
'                        ! updated history entry for #110.30            
'
' V02.00  01.07.20 ASI   ! copied over the BCL files from the BCL icmaster
'                        ! replaced the built in ioctl call with io_ctl defined by the 
'                          nextion.bcl module
'         02.07.20 ASI   ! replaced the get_data() with get_cmd() call and updated the nextion module
'         06.07.20 ASI   + added button states handling
'         10.07.20 ASI   ! modified the message routine to send text to the Nextion panel
'                        ! improved the key detection responsiveness by moving get_key() 
'                          and leds_sync() calls to the keyboard timer routine instead of
'                          in the main BCL loop
'         24.07.20 ASI   + sync the call state with the Nextion panel
'                        ! disable call close with the "accept Call" button (use always
'                          the "Close Call" button)
'         30.07.20 ASI   + created separate key ID for the "relay" button, cleaned up some
'                          syslogs, sync debug mode with the panel
' V02.01  08.09.20 ASI   ! TALK-56: fixed incompletely recorded messages
'         10.09.20 ASI   ! TALK-44: Hardcoded the audio input to Line-In
' V02.02  25.09.20 ASI   ! TALK-57: Implemented IC Paging buttons labeling
'
	
