jit.off()
--[[
*****************************************************************************************
* Script Name :  A333.ecam_fws255.lua
* Process: FWS ECP RCL PROCESSING
*
* Author Name :	Jim Gregory
*
* Revisions:
* -- DATE --  --- REV NO ---  --- DESCRIPTION -------------------------------------------
*
*
*
*
*
*****************************************************************************************
*       					     COPYRIGHT © 2021, 2022
*					 	   L A M I N A R   R E S E A R C H
*								  ALL RIGHTS RESERVED
*****************************************************************************************
--]]


--print("LOAD: A333.ecam_fws250.lua")

--*************************************************************************************--
--** 					              XLUA GLOBALS              				     **--
--*************************************************************************************--

--[[

SIM_PERIOD: this contains the duration of the current frame in seconds (so it is alway a
fraction).  Use this to normalize rates,  e.g. to add 3 units of fuel per second in a
per-frame callback you’d do fuel = fuel + 3 * SIM_PERIOD.


IN_REPLAY: evaluates to 0 if replay is off, 1 if replay mode is on

--]]


--*************************************************************************************--
--** 					               CONSTANTS                    				 **--
--*************************************************************************************--



--*************************************************************************************--
--** 					            GLOBAL VARIABLES                				 **--
--*************************************************************************************--



--*************************************************************************************--
--** 					            LOCAL VARIABLES                 				 **--
--*************************************************************************************--



--*************************************************************************************--
--** 				             FIND X-PLANE DATAREFS            			    	 **--
--*************************************************************************************--



--*************************************************************************************--
--** 				             FIND X-PLANE COMMANDS                   	    	 **--
--*************************************************************************************--



--*************************************************************************************--
--** 				             FIND CUSTOM DATAREFS             			    	 **--
--*************************************************************************************--



--*************************************************************************************--
--** 				             FIND CUSTOM COMMANDS								**--
--*************************************************************************************--



--*************************************************************************************--
--** 				        CREATE READ-ONLY CUSTOM DATAREFS               	         **--
--*************************************************************************************--



--*************************************************************************************--
--** 				       READ-WRITE CUSTOM DATAREF HANDLERS     	        	     **--
--*************************************************************************************--



--*************************************************************************************--
--** 				       CREATE READ-WRITE CUSTOM DATAREFS                         **--
--*************************************************************************************--



--*************************************************************************************--
--** 				            CUSTOM COMMAND HANDLERS            				     **--
--*************************************************************************************--



--*************************************************************************************--
--** 				             CREATE CUSTOM COMMANDS              			     **--
--*************************************************************************************--



--*************************************************************************************--
--** 				          X-PLANE WRAP COMMAND HANDLERS              	    	 **--
--*************************************************************************************--



--*************************************************************************************--
--** 				              WRAP X-PLANE COMMANDS                  	    	 **--
--*************************************************************************************--


--*************************************************************************************--
--** 				         X-PLANE REPLACE COMMAND HANDLERS              	    	 **--
--*************************************************************************************--



--*************************************************************************************--
--** 				            REPLACE X-PLANE COMMANDS                  	    	 **--
--*************************************************************************************--



--*************************************************************************************--
--** 					          OBJECT CONSTRUCTORS         		        		 **--
--*************************************************************************************--



--*************************************************************************************--
--** 				                 CREATE OBJECTS              	     			 **--
--*************************************************************************************--



--*************************************************************************************--
--** 				              FUNCTION DEFINITIONS         	    				 **--
--*************************************************************************************--

function A333_fws_RCL()

	if ZRCLUP then		-- RCL BUTTON PRESS (PULSE)
		if A333DR_ecp_pushbutton_process_step[19] == 1 then
			A333DR_ecp_pushbutton_process_step[19] = 2
			A333_ecp_ProcessRCL()
			A333DR_ecp_pushbutton_process_step[19] = 0
			A333_fws_process_rcl_normal = true
		end
	end

end

function A333_ecp_ProcessRCL()

	-- RESET MESSAGES THAT WERE PREVIOUSLY CLEARED BY (CLR)
	for _, msg in pairs(A333_ewd_msg) do

		if string.find(msg.CmdInputs, 'RCL') then

			if msg.Monitor.video.OUT == 2 then
				msg.Monitor.video.OUT = 1				-- CANX CLEAR OF THIS WARNING
			end

			for i = 1, #msg.MsgLine do
				msg.MsgLine[i].MsgCleared = 0			-- CANX CLEAR OF THE MESSAGE ACTION LINES
			end

		end

	end

end









function A333_fws_rcl_normal_msg()

	if A333_fws_process_rcl_normal then

		local normal = true
		for _, msg in pairs(A333_ewd_msg) do
			if msg.FailType == 1
				or msg.FailType == 2
				or msg.FailType == 4
			then
				if msg.Monitor.video.OUT == 1 then
					normal = false
				end
			end
		end


		if normal then
			A333_fws_show_rcl_normal_msg()
		else
			A333_fws_hide_rcl_normal_msg()
		end

		A333_fws_process_rcl_normal = false

	end

end

function A333_fws_rcl_normal_timeout()
	A333DR_fws_rcl_normal_msg_show = 0
end

function A333_fws_show_rcl_normal_msg()
	A333_fws_rcl_stop_timer()
	A333DR_fws_rcl_normal_msg_show = 1
	run_after_time(A333_fws_rcl_normal_timeout, 3.0)
end

function A333_fws_hide_rcl_normal_msg()
	A333_fws_rcl_stop_timer()
	A333DR_fws_rcl_normal_msg_show = 0
end

function A333_fws_rcl_stop_timer()
	if is_timer_scheduled(A333_fws_rcl_normal_timeout) then
		stop_timer(A333_fws_rcl_normal_timeout)
	end
end





--*************************************************************************************--
--** 				                   PROCESSING             	     	  			 **--
--*************************************************************************************--

function A333_fws_255()

	A333_fws_RCL()
	A333_fws_rcl_normal_msg()

end





--*************************************************************************************--
--** 				                 EVENT CALLBACKS           	    	 			 **--
--*************************************************************************************--



--*************************************************************************************--
--** 				               SUB-SCRIPT LOADING             	     			 **--
--*************************************************************************************--

-- dofile("fileName.lua")







