Interfacer le simulateur de Jul50x

Silverstar

CONTROLEUR AERIEN
Messages
23 061
Réactions
3 300
Points
3 512
La demande concerne le simulateur de jul50x, apres avoir fait un teamviewer, la carte expansion qui porte le device 17 dans le script fourni par Opencockpit ne fonctionne pas avec Sioc Monitor. SIOC fait sans arret des "ne réponds pas" impossible d'effectuer une maintenance a distance.

De plus je ne me rappelle plus mais dans "Device Connected" on a bien 17 et #cards = 1 alors que a coté Script device on a #cards = 0

Si un moustachu pouvait donner son avis O:)


 
Alors j'ai pas de moustache mais sioc est bien lancé en dernier ? Après p3d et tout et surtout en administrateur ?
 
Dans la fenêtre du bas "SIOC(ne répond pas)", dans la zone "devices", pourquoi il n'y as pas de "device" apparents ?
 
Je m'y suis remis ce matin...

Au premier démarrage, ça semblait fonctionner. Mais j'ai voulu recommencer lopération et bien évidemment ça ne marche plus.
A chaque utilisation de Sioc, j'ai le message "Terminate Thread Timeout" au moment de la fermeture, mais j'ai l'impression que Sioc bloque tout car même Sioc monitor n'envoie pas l'affichage au MCP.




A suivre...
 
A suivre dans 3 semaines :p (Juju se barre, bonne vacances le Normand).

Alors j'ai pas de moustache mais sioc est bien lancé en dernier ? Après p3d et tout et surtout en administrateur ?

Bah écoute je sais pas si ça dépend du PC de chacun mais apres avoir testé le simu en long et en large chez moi, le mien quoi tu peux démarrer P3D, Prosim et SIOC dans n'importe quel ordre.

Dans la fenêtre du bas "SIOC(ne répond pas)", dans la zone "devices", pourquoi il n'y as pas de "device" apparents ?

Bah justement SIOC ne fait que planté, au départ il avait tout ces IDX de foiré, j'ai refait les IDX pour lui via Teamviewer et tout fonctionnait bien sauf le MIP....puis teamviewer a commencé a devenir super lent.

Donc je lui ai dit redémarre tout, quitte teamviewer et refait comme je t'ai montré tout seul. Et la par exemple le MCP ne s'allumait pas avec BAT sur ON, puis il quitt'ait SIOC et relancait et le MCP marchait mais toujours pas le MIP.

Si par exemple il fait un SIOC MOnitor, quand par exemple il vient douvrir SIOC certains composants ne font rien.

Le MIP étant sur la expansion V3 elle na fonctionné que lorsque j'ai été chez lui, mais apparement :mad: un ami a lui a bidouillé dans SIOC, et depuis c'est le bordel (pas touché).

A moins de faire une vérification complete il faudrai demandé a ton pote ce qu'il a touché sur le simu??
 
A moins de faire une vérification complete il faudrai demandé a ton pote ce qu'il a touché sur le simu??


Bon J'ai revu avec mon pote. En fait il n'avait "touché" qu'à  lIDX de la MasterCard et du FMC... Mais avec ton intervention dhier, tu as tout remis en ordre. Je pense que Sioc se bloque car tout à  l'heure, j'ai redémarré l'ensemble, et ça a fonctionné 2 minutes (accès aux fonctions du FMC, EFIS, DUs...). Mais ensuite, plus aucune interaction... Et toujours ce message "Terminate Thread Timeout" à  la fermeture de Sioc.

C'est vraiment incompréhensible!!!

A bientôt et bons vols.
 
Ya possibilité de voir le code ? Tu peux le poster en format texte ?
 
Code:
// MIP SCRIPT FOR PROSIM: SINGLE AND DUAL SEAT.
// IDX DEVICES SHOULD BE:
// MCP = 0
// EFIS CAPT = 1
// EFIS F/O = 2
// CDU CAPT = 13
// CDU F/O = 14
// CHRONO CAPT = 15
// CHRONO F/O = 16
// USB EXPANSION INPUTS AND OUTPUTS (WARNINGS, DUs, AFDSs, FLAPS, SWITCHES AND INDICATORS) = 17
// USB SERVOS = 18



// ////////////////////////////////////////////////
// EFIS Capt
// Prosim reads from 500 - 522
// ////////////////////////////////////////////////

Var 500, name I_E1_DISPMODE
Var 501, name I_E1_ZOOM
Var 502, name I_E1_NAV1
Var 503, name I_E1_NAV2
Var 504, name I_E1_STA, Link IOCARD_SW, Device 1, Input 27
Var 505, name I_E1_WPT, Link IOCARD_SW, Device 1, Input 28
Var 506, name I_E1_CTR, Link IOCARD_SW, Device 1, Input 29
Var 507, name I_E1_ARPT, Link IOCARD_SW, Device 1, Input 30
Var 508, name I_E1_TFC, Link IOCARD_SW, Device 1, Input 31
Var 509, name I_E1_DATA, Link IOCARD_SW, Device 1, Input 32
Var 510, name I_E1_POS, Link IOCARD_SW, Device 1, Input 33
Var 511, name I_E1_FPV, Link IOCARD_SW, Device 1, Input 34
Var 512, name I_E1_MTR, Link IOCARD_SW, Device 1, Input 38
Var 513, name I_E1_MINRST
Var 514, name I_E1_QNHSTD
Var 515, name I_E1_MINRADIO
Var 516, name I_E1_MINBARO
Var 517, name I_E1_CHANGEMIN
Var 518, name I_E1_BAROHPA
Var 519, name I_E1_BAROINCH
Var 520, name I_E1_CHGBARO
Var 521, name I_E1_TERR
Var 522, name I_E1_WXR

Var 523, Link IOCARD_SW, Device 1, Input 10    // VOR mode
{
 If V523 = 1
  {
   &I_E1_DISPMODE = 2	
  }
}
Var 524, Link IOCARD_SW, Device 1, Input 11    // MAP mode
{
 If V524 = 1
  {
   &I_E1_DISPMODE = 3	
  }
}
Var 525, Link IOCARD_SW, Device 1, Input 12    // PLAN mode
{
 If V525 = 1
  {
   &I_E1_DISPMODE = 4
  }
}

Var 526, Link IOCARD_SW, Device 1, Input 0    // Range 5
{
 If V526 = 1
  {
   &I_E1_ZOOM = 1
  }
}
Var 527, Link IOCARD_SW, Device 1, Input 1    // Range 10
{
 If V527 = 1
  {
   &I_E1_ZOOM = 2
  }
}
Var 528, Link IOCARD_SW, Device 1, Input 2    // Range 20
{
 If V528 = 1
  {
   &I_E1_ZOOM = 3
  }
}
Var 529, Link IOCARD_SW, Device 1, Input 3    // Range 40
{
 If V529 = 1
  {
   &I_E1_ZOOM = 4
  }
}
Var 530, Link IOCARD_SW, Device 1, Input 4    // Range 80
{
 If V530 = 1
  {
   &I_E1_ZOOM = 5
  }
}
Var 531, Link IOCARD_SW, Device 1, Input 5    // Range 160
{
 If V531 = 1
  {
   &I_E1_ZOOM = 6
  }
}
Var 532, Link IOCARD_SW, Device 1, Input 6    // Range 320
{
 If V532 = 1
  {
   &I_E1_ZOOM = 7
  }
}
Var 533, Link IOCARD_SW, Device 1, Input 7    // Range 640
{
 If V533 = 1
  {
   &I_E1_ZOOM = 8
  }
}
Var 535, Link IOCARD_SW, Device 1, Input 36    // NAV 1 VOR
{
 CALL &E1NAV1
}
Var 536, Link IOCARD_SW, Device 1, Input 37    // NAV 1 ADF
{
 CALL &E1NAV1
}
var 537, name E1NAV1, Link SUBRUTINE
{
 If V535 = 1
  {
   &I_E1_NAV1 = 1	
  }
 Else
  {
   If V536 = 1
    {
     &I_E1_NAV1 = 2
    }
   Else
    {
     &I_E1_NAV1 = 0
    }
  }
}

Var 538, Link IOCARD_SW, Device 1, Input 18    // NAV 2 VOR
{
 CALL &E1NAV2
}
Var 539, Link IOCARD_SW, Device 1, Input 19    // NAV 2 ADF
{
 CALL &E1NAV2
}
var 540, name E1NAV2, Link SUBRUTINE
{
 If V538 = 1
  {
   &I_E1_NAV2 = 1	
  }
 Else
  {
   If V539 = 1
    {
     &I_E1_NAV2 = 2
    }
   Else
    {
     &I_E1_NAV2 = 0
    }
  }
}
Var 541, Link IOCARD_SW, Device 1, Input 9    // APP mode
{
 If V541 = 1
  {
   &I_E1_DISPMODE = 1	
  }
}
var 550, name Min1Moved
Var 551, name Bar1Moved

// Minimums knob push button
Var 552, Link IOCARD_SW, Device 1, Input 25
{
 If V552 = 1
  {
   &Min1Moved = 0
  }
 Else
  {
   If &Min1Moved = 0
    {
     &I_E1_MINRST = Toggle 0
    }
  }
}
// QNH knob push button
Var 553, Link IOCARD_SW, Device 1, Input 22
{
 If V553 = 1
  {
   &Bar1Moved = 0
  }
 Else
  {
   If &Bar1Moved = 0
    {
     &I_E1_QNHSTD = Toggle 0
    }
   }
}
// Minimums rotary encoder
Var 554, Link IOCARD_ENCODER, Device 1, Input 23, Aceleration 4, Type 2
{
 &Min1Moved = 1
 If V552 = 1
  {
   If V554 > 0 
    {
     &I_E1_MINRADIO = Toggle 0
    }
   Else
    {
     &I_E1_MINBARO = Toggle 0
    }
  }
 Else
  {
   &I_E1_CHANGEMIN = V554 * -1
   &I_E1_CHANGEMIN = 0
  }
}
// QNH rotary encoder
Var 555, Link IOCARD_ENCODER, Device 1, Input 20, Aceleration 4, Type 2
{
 &Bar1Moved = 1
 If V553 = 1
  {
   If V555 > 0 
    {
     &I_E1_BAROINCH = Toggle 0
    }
   Else
    {
     &I_E1_BAROHPA = Toggle 0
    }
  }
 Else
  {
   &I_E1_CHGBARO = V555 * -1
   &I_E1_CHGBARO = 0
  }
}
// ///////////////////////////////////
// End EFIS Captain
// ///////////////////////////////////



// ////////////////////////////////////////////////
// EFIS F/O
// ////////////////////////////////////////////////

Var 600, name I_E2_DISPMODE
Var 601, name I_E2_ZOOM
Var 602, name I_E2_NAV1
Var 603, name I_E2_NAV2
Var 604, name I_E2_STA, Link IOCARD_SW, Device 2, Input 27
Var 605, name I_E2_WPT, Link IOCARD_SW, Device 2, Input 28
Var 606, name I_E2_CTR, Link IOCARD_SW, Device 2, Input 29
Var 607, name I_E2_ARPT, Link IOCARD_SW, Device 2, Input 30
Var 608, name I_E2_TFC, Link IOCARD_SW, Device 2, Input 31
Var 609, name I_E2_DATA, Link IOCARD_SW, Device 2, Input 32
Var 610, name I_E2_POS, Link IOCARD_SW, Device 2, Input 33
Var 611, name I_E2_FPV, Link IOCARD_SW, Device 2, Input 34
Var 612, name I_E2_MTR, Link IOCARD_SW, Device 2, Input 38
Var 613, name I_E2_MINRST
Var 614, name I_E2_QNHSTD
Var 615, name I_E2_MINRADIO
Var 616, name I_E2_MINBARO
Var 617, name I_E2_CHANGEMIN
Var 618, name I_E2_BAROHPA
Var 619, name I_E2_BAROINCH
Var 620, name I_E2_CHGBARO
Var 621, name I_E2_TERR
Var 622, name I_E2_WXR

Var 623, Link IOCARD_SW, Device 2, Input 10    // VOR mode
{
	If V623 = 1
	{
		&I_E2_DISPMODE = 2	
	}
}
Var 624, Link IOCARD_SW, Device 2, Input 11    // MAP mode
{
	If V624 = 1
	{
		&I_E2_DISPMODE = 3	
	}
}
Var 625, Link IOCARD_SW, Device 2, Input 12    // PLAN mode
{
	If V625 = 1
	{
		&I_E2_DISPMODE = 4
	}
}

Var 626, Link IOCARD_SW, Device 2, Input 0    // Range 5
{
	If V626 = 1
	{
		&I_E2_ZOOM = 1
	}
}
Var 627, Link IOCARD_SW, Device 2, Input 1    // Range 10
{
	If V627 = 1
	{
		&I_E2_ZOOM = 2
	}
}
Var 628, Link IOCARD_SW, Device 2, Input 2    // Range 20
{
	If V628 = 1
	{
		&I_E2_ZOOM = 3
	}
}
Var 629, Link IOCARD_SW, Device 2, Input 3    // Range 40
{
	If V629 = 1
	{
		&I_E2_ZOOM = 4
	}
}
Var 630, Link IOCARD_SW, Device 2, Input 4    // Range 80
{
	If V630 = 1
	{
		&I_E2_ZOOM = 5
	}
}
Var 631, Link IOCARD_SW, Device 2, Input 5    // Range 160
{
	If V631 = 1
	{
		&I_E2_ZOOM = 6
	}
}
Var 632, Link IOCARD_SW, Device 2, Input 6    // Range 320
{
	If V632 = 1
	{
		&I_E2_ZOOM = 7
	}
}
Var 633, Link IOCARD_SW, Device 2, Input 7    // Range 640
{
	If V633 = 1
	{
		&I_E2_ZOOM = 8
	}
}
Var 635, Link IOCARD_SW, Device 2, Input 36    // NAV 1 VOR
{
	CALL &E2NAV1
}
Var 636, Link IOCARD_SW, Device 2, Input 37    // NAV 1 ADF
{
	CALL &E2NAV1
}
var 637, name E2NAV1, Link SUBRUTINE
{
	If V635 = 1
	{
		&I_E2_NAV1 = 1	
	}
	Else
	{
		If V636 = 1
		{
			&I_E2_NAV1 = 2
		}
		Else
		{
			&I_E2_NAV1 = 0
		}
	}
}

Var 638, Link IOCARD_SW, Device 2, Input 18    // NAV 2 VOR
{
	CALL &E2NAV2
}
Var 639, Link IOCARD_SW, Device 2, Input 19    // NAV 2 ADF
{
	CALL &E2NAV2
}
var 640, name E2NAV2, Link SUBRUTINE
{
	If V638 = 1
	{
		&I_E2_NAV2 = 1	
	}
	Else
	{
		If V639 = 1
		{
			&I_E2_NAV2 = 2
		}
		Else
		{
			&I_E2_NAV2 = 0
		}
	}
}
Var 641, Link IOCARD_SW, Device 2, Input 9    // APP mode
{
	If V641 = 1
	{
		&I_E2_DISPMODE = 1	
	}
}
var 650, name Min2Moved
Var 651, name Bar2Moved

Var 652, Link IOCARD_SW, Device 2, Input 25
{
	If V652 = 1
	{
		&Min2Moved = 0
	}
	Else
	{
		If &Min2Moved = 0
		{
			&I_E2_MINRST = Toggle 0
		}
	}
}
Var 653, Link IOCARD_SW, Device 2, Input 22
{
	If V653 = 1
	{
		&Bar2Moved = 0
	}
	Else
	{
		If &Bar2Moved = 0
		{
			&I_E2_QNHSTD = Toggle 0
		}
	}
}
Var 654, Link IOCARD_ENCODER, Device 2, Input 23, Aceleration 4, Type 2
{
	&Min2Moved = 1
	If V652 = 1
	{
		If V654 > 0 
		{
			&I_E2_MINRADIO = Toggle 0
		}
		Else
		{
			&I_E2_MINBARO = Toggle 0
		}
	}
	Else
	{
		&I_E2_CHANGEMIN = V654 * -1
		&I_E2_CHANGEMIN = 0
	}
}
Var 655, Link IOCARD_ENCODER, Device 2, Input 20, Aceleration 4, Type 2
{
	&Bar2Moved = 1
	If V653 = 1
	{
		If V655 > 0 
		{
			&I_E2_BAROINCH = Toggle 0
		}
		Else
		{
			&I_E2_BAROHPA = Toggle 0
		}
	}
	Else
	{
		&I_E2_CHGBARO = V655 * -1
		&I_E2_CHGBARO = 0
	}
}

// ///////////////////////////
// End EFIS F/O
// ///////////////////////////



// ///////////////////////////
// MCP
// ///////////////////////////

// INITIALIZATION
Var 0000, Value 0
{
&SUB_BLINK = 0
&SUB_BLINK = TIMER 1, 0, 100
}

// DIGITS
// These are the actual MCP values that are read and written by Prosim. They need to be whole values.
Var 100, name D_COURSE1, Link IOCARD_DISPLAY, Device 0, Digit 0, Numbers 3
Var 102, name D_IAS, Link IOCARD_DISPLAY, Device 0, Digit 3, Numbers 3
Var 104, name D_HDG, Link IOCARD_DISPLAY, Device 0, Digit 6, Numbers 3
Var 106, name D_ALT, Link IOCARD_DISPLAY, Device 0, Digit 9, Numbers 5
Var 108, name D_VS, Link IOCARD_DISPLAY, Device 0, Digit 14, Numbers 5
Var 110, name D_COURSE2, Link IOCARD_DISPLAY, Device 0, Digit 19, Numbers 3
Var 112, Name VS_Trigger  // Vertical Speed Trigger
// This variable is set to 1 when the VS wheel is rotated while the VS display is blanked.
// This can trigger a V/S mode if MCP altitude is different than current altitude.
Var 114, name BRIGHT, Link IOCARD_DISPLAY, Device 0, Digit 32, Numbers 3  // Bright control for digits
Var 116, name D_IAS_IND, Link IOCARD_DISPLAY, Device 0, Digit 22, Numbers 1
Var 118, name SUB_BLINK, Link SUBRUTINE
{
 If &Inhibit_IAS = 0
  {
   IF &O_IASSYMB = 0
    {
     &D_IAS_IND = -999999
    }
   ELSE
    {
     IF &O_IASSYMB = 1
      {
       &D_IAS_IND = -999996
       &D_IAS_IND = DELAY -999999 80
      }
   IF &O_IASSYMB = 2
    {
     &D_IAS_IND = 8
     &D_IAS_IND = DELAY -999999 80
    }
   }
  }
}
Var 120, name HDG_temp
Var 122, name BANK_act


// OUTPUTS
// These are the lights on the MCP, written by Prosim
Var 200, name DECIMAL
{
If &Inhibit_IAS = 0  // Do not place the decimal if the display is blanked
 {
  &IAS_DOT = &DECIMAL
 }
}
Var 201, name IAS_DOT, Link IOCARD_OUT, Device 0, Output 20
Var 202, name O_N1, Link IOCARD_OUT, Device 0, Output 21
Var 204, name O_AT, Link IOCARD_OUT, Device 0, Output 22
Var 206, name O_SPEED, Link IOCARD_OUT, Device 0, Output 23
Var 208, name O_LVLCHG, Link IOCARD_OUT, Device 0, Output 24
Var 210, name O_VNAV, Link IOCARD_OUT, Device 0, Output 25
Var 212, name O_HDGSEL, Link IOCARD_OUT, Device 0, Output 26
Var 214, name O_APP, Link IOCARD_OUT, Device 0, Output 27
Var 216, name O_VORLOC, Link IOCARD_OUT, Device 0, Output 28
Var 218, name O_LNAV, Link IOCARD_OUT, Device 0, Output 29
Var 220, name O_ALTHLD, Link IOCARD_OUT, Device 0, Output 30
Var 222, name O_VS, Link IOCARD_OUT, Device 0, Output 31
Var 224, name O_CWSA, Link IOCARD_OUT, Device 0, Output 32
Var 226, name O_CMDA, Link IOCARD_OUT, Device 0, Output 33
Var 228, name O_CWSB, Link IOCARD_OUT, Device 0, Output 34
Var 230, name O_CMDB, Link IOCARD_OUT, Device 0, Output 35
Var 232, name O_FD1, Link IOCARD_OUT, Device 0, Output 37	
Var 234, name O_FD2, Link IOCARD_OUT, Device 0, Output 36	
Var 236, name O_IASSYMB  // Flashing A/B in IAS window, 0=No warning, 1=Flashing A, 2=Flashing B
Var 238, name O_BACKLIGHT		// Backlight: 1 = on, 0 = off



// ROTARY ENCODERS
// The rotary encoders control the MCP values. The actual rotary encoder variables are not read or written by Prosim.
// The rotary encoders change the MCP values. Before doing this, they will check the associated inhibit variable, to
// see if the display is not blanked. If the display is blanked, the rotary encoder ds nothing.
Var 300, name E_IAS, Link IOCARD_ENCODER, Device 0, Input 0, Aceleration 4, Type 2
{
  If &Inhibit_IAS = 0 
  {
     L0 = -1 * V300
	 If &DECIMAL = 1
	 {
	    V102 = LIMIT 50, 90, L0
	 }
	 Else
	 {
	    V102 = LIMIT 110, 400, L0
     }
  }
}
Var 302, name E_ALT, Link IOCARD_ENCODER, Device 0, Input 2, Aceleration 4, Type 2
{
  If &Inhibit_Alt = 0
  {
     L0 = -100 * V302
     V106 = LIMIT 0 ,50000, L0
  }
}

Var 304, name E_COURSE1, Link IOCARD_ENCODER, Device 0, Input 4, Aceleration 4, Type 2
{
  If &Inhibit_OBS1 = 0
  {
     L0 = V304 * -1
     V100 = ROTATE 0, 359, L0
  }
}
Var 306, name E_HDG, Link IOCARD_ENCODER, Device 0, Input 6, Aceleration 4, Type 2
{
 	If &Inhibit_HDG = 0
	{
		If &Bank_act = 0
		{
			L0 = &E_HDG * -1
			&D_HDG = ROTATE 0, 359, L0
			&HDG_temp = &D_HDG
		}
		If &I_BANK_SW = 1
		{
			&D_HDG = &I_BANK_LIMIT
			L1 = &E_HDG * -5
			&D_HDG = LIMIT 10, 30, L1
			&I_BANK_LIMIT = &D_HDG
		}
		ELSE
		{
			&D_HDG = &HDG_temp
		}
	}
}
Var 308, name E_COURSE2, Link IOCARD_ENCODER, Device 0, Input 9, Aceleration 4, Type 2
{
  If &Inhibit_OBS2 = 0
  {
     L0 = V308 * -1
     V110 = ROTATE 0, 359, L0
  }
}
Var 310, name E_VS, Link IOCARD_ENCODER, Device 0, Input 11, Aceleration 4, Type 2
{
  If &Inhibit_VS = 0
  {
    L0 = V310 * -50
    V108 = LIMIT -7000, 7000, L0 
  }
  Else
  {
     &VS_Trigger = 1
  }
}

// Display Inhibit
// Display inhibit variables signal the blanking of the displays. They are written by Prosim
Var 320, name Inhibit_IAS
{
   If V320 = 1
   {
    &D_IAS = -999999
    V201 = 0
   }
   Else
   {
    V201 = &DECIMAL
   }
}

Var 322, name Inhibit_Alt
{
   If V322 = 1
   {
      &D_ALT = -999999
   }
}

Var 324, name Inhibit_OBS1
{
   If V324 = 1
   {
      &D_COURSE1 = -999999
   }
}

Var 326, name Inhibit_HDG
{
   If V326 = 1
   {
      &D_HDG = -999999
   }
}

Var 328, name Inhibit_OBS2
{
   If V328 = 1
   {
      &D_COURSE2 = -999999
   }
}

Var 330, name Inhibit_VS
{
   If V330 = 1
   {
      &D_VS = -999999
   }
}

// SWITCHES
// The MCP switches are read by Prosim
Var 400, name I_CO, Link IOCARD_SW, Device 0, Input 13
Var 402, name I_FD2, Link IOCARD_SW, Device 0, Input 14
Var 404, name I_DISENGAGE, Link IOCARD_SW, Device 0, Input 15
Var 406, name I_FD1, Link IOCARD_SW, Device 0, Input 16
Var 408, name I_CWSB, Link IOCARD_SW, Device 0, Input 18
Var 410, name I_CMDB, Link IOCARD_SW, Device 0, Input 19
Var 412, name I_CWSA, Link IOCARD_SW, Device 0, Input 20
Var 414, name I_CMDA, Link IOCARD_SW, Device 0, Input 21
Var 416, name I_VS, Link IOCARD_SW, Device 0, Input 22
Var 418, name I_ALTHLD, Link IOCARD_SW, Device 0, Input 23
Var 420, name I_APP, Link IOCARD_SW, Device 0, Input 24
Var 422, name I_VORLOC, Link IOCARD_SW, Device 0, Input 25
Var 424, name I_LNAV, Link IOCARD_SW, Device 0, Input 27
Var 426, name I_HDGSEL, Link IOCARD_SW, Device 0, Input 28
Var 428, name I_LVLCHG, Link IOCARD_SW, Device 0, Input 29
Var 430, name I_VNAV, Link IOCARD_SW, Device 0, Input 30
Var 432, name I_SPEED, Link IOCARD_SW, Device 0, Input 31
Var 434, name I_N1, Link IOCARD_SW, Device 0, Input 32
Var 436, name I_AT, Link IOCARD_SW, Device 0, Input 33
Var 438, name I_SPD_INTER, Link IOCARD_SW, Device 0, Input 37
Var 440, name I_ALT_INTER, Link IOCARD_SW, Device 0, Input 36
Var 442, name I_BANK_LIMIT, VALUE 10
Var 444, name I_BANK_SW, Link IOCARD_SW, Device 0, Input 34	// Activate bank limit
{
	If &I_BANK_SW = 1
	{
		&Bank_act = 1
		&D_HDG = &I_BANK_LIMIT
	}
	Else
	{
		&Bank_act = 0
		&D_HDG = &HDG_temp
	}
}

// ///////////////////////////
// END MCP
// ///////////////////////////



// ///////////////////////////
// CDU CAPT
// ///////////////////////////
Var 45, name CDUKey, Link IOCARD_KEYS, device 13  // Keyboard reading
Var 46, name CDUExec, Link IOCARD_OUT,  device 13, Output 2  // device
Var 47, name CDUFail, Link IOCARD_OUT, device 13, Output 4
Var 48, name CDUMSG, Link IOCARD_OUT,  device 13, Output 1
// ///////////////////////////
// END CDU CAPT
// ///////////////////////////



// ///////////////////////////
// CDU F/O
// ///////////////////////////
Var 50, name CDUKeyfo, Link IOCARD_KEYS, device 14  // Keyboard reading
Var 51, name CDUExecfo, Link IOCARD_OUT,  device 14, Output 2  // device
Var 52, name CDUFailfo, Link IOCARD_OUT, device 14, Output 4
Var 53, name CDUMSGfo, Link IOCARD_OUT,  device 14, Output 1
// ///////////////////////////
// END CDU F/O
// ///////////////////////////




// ///////////////////////////
// CHRONO CAPT
// ///////////////////////////

Var 0001, Value 0 // Inicializacion de valores de variables
{
&D_CHRBRIGHT = 120
&PARPADEO_U = 0
&PARPADEO_D = 1
&Time_Date_Year = 3 
&Disp_Year = &Zulu_Year_Set
&Year_to_Modif = &Zulu_Year_Set // Pasamos el aà±o a una vble interna
&Modif_Year = 0
&Estado_CHR = 1
&Estado_ET = 1
&CHR_ET_ToDisp = -1
&DECIMAL_C = 0
&Aguja_Segundos = 45
}


// ///////////////////////////////////////
// VARIABLES PROPIAS
// ///////////////////////////////////////

Var 3010, name Time_Date_Year // Indice para digitos Time-Date-Year
Var 3012, name Modif_Year // Activamos control modificacion aà±o. 0=Descativado, 1=Activado
Var 3014, name Modif_DDMM // Activamos control modificacion Dia.Mes -> 0=Descativado, 1=Mes 2=Dà­a
Var 3015, name Modif_HHMM // Activamos control modificacion Hora.Minutos-> 0=Descativado, 1=Minutos 2=Horas
Var 3016, name Year_to_Modif // Guarda el aà±o para modificar
Var 3018, name DD_to_Modif // Guarda el Dia para modificar
Var 3020, name MM_to_Modif // Guarda el Mes para modificar
Var 3022, name CHR_ET_ToDisp // Controla si vemos el CHR o el ET en el display inferior. 0=CHR 1=ET
Var 3024, name CHR_Min // Acumula los Minutos del cronometro
Var 3026, name CHR_Sec // Acumula los Segundos del cronometro
Var 3028, name Estado_CHR // COntrola el estado del Botà³n CHR. 0 -> Pone Crono en display
// 2 -> Inicia CHR o continàºa
// 3 -> STOP Cronà³metro.
Var 3030, name ET_Hr // Acumula las Horas del ET (Elapsed Time)
Var 3032, name ET_Min // Acumula los Minutos del ET (Elapsed Time)
Var 3034, name ET_Sec // Acumula los Segundos del ET (Elapsed Time)
Var 3036, name Estado_ET // COntrola el estado del Botà³n ET. 0 -> Pone ET en display
// 2 -> Inicia ET o continàºa
// 3 -> STOP ET 
Var 3037, name Limit_DD_Mes // Almacena el total de dà­as que tiene el mes activo
Var 3038, name DayofYear // Almacena el dà­a del aà±o


Var 3039, name M_MOTOR, Link IOCARD_MOTOR, Device 15, Output 1, Aceleration 200
Var 3040, name Aguja_Segundos
{
 L0 = 4065 / 60
 L0 = L0 * &Aguja_Segundos
 &M_MOTOR = ROUND L0
}

Var 3041, name PARPADEO_U, link SUBRUTINE
{
 &BLINK = 0
}

Var 3042, name PARPADEO_D, Link SUBRUTINE
{
 &BLINK2 = 0
}

Var 3043, name HH_to_Modif // Guarda la hora para modificar
Var 3044, name MI_to_Modif // Guarda los minutos para modificar


// ///////////////////////////////////////
// VARIABLES FSUIPC
// ///////////////////////////////////////

Var 3050, name Clock_Seconds, link FSUIPC_INOUT, offset $023A, length 1 // Segundos del Reloj del FS
{
 IF &Time_Date_Year = 1 // Visualizo el aà±o
  {
   IF &Modif_Year = 1 // Si estamos en activacion del control del aà±o 
   {
    &Disp_Year = &Year_to_Modif
    &Disp_Year = Delay -999999, 50
   }
  }
 IF &Time_Date_Year = 2 // Visualizo el dia y mes
  {
   IF &Modif_DDMM = 1 // Si estamos en activacion del control modificacion Mes
    {
     &Disp_Month_Min = &MM_to_Modif
     &Disp_Month_Min = Delay -999999, 50
     &Disp_Day_Hour = &DD_to_Modif 
    }
   IF &Modif_DDMM = 2 // Si estamos en activacion del control modificacion Dà­a
    {
     &Disp_Day_Hour = &DD_to_Modif 
     &Disp_Day_Hour = Delay -999999, 50 
     &Disp_Month_Min = &MM_to_Modif
    }
  }
 IF &Time_Date_Year = 3 // Visualizo la hora Zulu
  {
   CALL &Show_Display
   IF &Modif_HHMM = 1 // Si estamos en activacion del control modificacion Minutos
    {
     &Disp_Month_Min = &MI_to_Modif
     &Disp_Month_Min = Delay -999999, 50
     &Disp_Day_Hour = &HH_to_Modif
    }
   IF &Modif_HHMM = 2 // Si estamos en activacion del control modificacion Horas
    {
     &Disp_Day_Hour = &HH_to_Modif 
     &Disp_Day_Hour = Delay -999999, 50 
     &Disp_Month_Min = &MI_to_Modif
    }
  }
 IF &Time_Date_Year = 4 // Visualizo Minutos y Segundos
  {
   CALL &Show_Display
  }
 IF &Estado_CHR = 2 // 2 -> Inicia CHR o continàºa
  {
   IF &CHR_ET_ToDisp = 0 
    {
     &PARPADEO_D = 1
    }
   &CHR_Sec = &CHR_Sec + 1
   IF &CHR_Sec > 59
    {
     &CHR_Sec = 0
     &CHR_Min = &CHR_Min + 1
     IF &CHR_Min > 59 // Cuando llegamos a 1 hora se pone a cero
      {
       &CHR_Min = 0
      }
    }
   &Aguja_Segundos = &CHR_Sec // Movemos la aguja de los segundos si el CHR esta funcionando
  }
 IF &Estado_ET = 2 // 2 -> Inicia ET o continàºa
  {
   IF &CHR_ET_ToDisp = 1 
    {
     &PARPADEO_D = 1
    }
  &ET_Sec = &ET_Sec + 1
  IF &ET_Sec > 59
   {
    &ET_Sec = 0
    &ET_Min = &ET_Min + 1
    IF &ET_Min > 59
     {
      &ET_Min = 0
      &ET_Hr = &ET_Hr + 1
     }
   }
  }
 IF &CHR_ET_ToDisp = 0 // Mostramos el CHR en los displays inferiores
  {
   Call &Ver_CHR
  }
 ELSE // Mostramos el ET en los displays inferiores
 {
 IF &CHR_ET_ToDisp = 1
  {
   Call &Ver_ET
  }
 }
}

Var 3052, name Zulu_Hour, link FSUIPC_INOUT, offset $023B, length 1 // Hora Zulu. Lectura y escritura
{
 CALL &Show_Display
}

Var 3054, name Zulu_Minute, link FSUIPC_INOUT, offset $023C, length 1 // Minutos Zulu. Lectura y escritura
{
 CALL &Show_Display
}

Var 3056, name Day_of_Year, link FSUIPC_INOUT, offset $023E, length 2 // Numero del dà­a del aà±o. Lectura y escritura. Numero total de dias al aà±o


Var 3058, name Day_of_Month, link FSUIPC_IN, offset $023D, length 1 // Dà­a del mes correspondiente. Sà³lo lectura
{
 CALL &Show_Display
}

Var 3060, name Current_Month, link FSUIPC_IN, offset $0242, length 1 // Numero del mes. Sà³lo lectura
{
 CALL &Show_Display
}

Var 3062, name Zulu_Year_Set, link FSUIPC_INOUT, offset $0240, length 2 // Aà±o. Lectura y escritura
{
 &Year_to_Modif = &Zulu_Year_Set
 Call &Chk_Bisiesto // Comprobamos si es bisiesto
}

// /////////////////////////////////////////////////////////////////////////////////////////
// VARIABLES IOCARDS ------------ DISPLAYS ------------
// /////////////////////////////////////////////////////////////////////////////////////////

Var 0900, name Disp_Year, Link IOCARD_DISPLAY, Device 15, Digit 0, Numbers 4 // UP Displays Year
Var 0901, name Disp_Day_Hour, Link IOCARD_DISPLAY, Device 15, Digit 2, Numbers 2 // UP Displays Day or Hour
Var 0902, name Disp_Month_Min, Link IOCARD_DISPLAY, Device 15, Digit 0, Numbers 2 // UP Displays Month or Minutes
Var 0904, name Disp_DWN_Min, Link IOCARD_DISPLAY, Device 15, Digit 6, Numbers 2 // Down Displays CHR - ET -> Min
Var 0905, name Disp_DWN_Sec, Link IOCARD_DISPLAY, Device 15, Digit 4, Numbers 2 // Down Displays CHR - ET -> Sec
Var 0908, name D_CHRBRIGHT, Link IOCARD_DISPLAY, Device 15, Digit 16, Numbers 3

Var 0913, name DECIMAL_U, Link IOCARD_OUT, Device 15, Output 20
Var 0914, name DECIMAL_D, Link IOCARD_OUT, Device 15, Output 21
Var 0915, name DECIMAL_C, Link IOCARD_OUT, Device 15, Output 22

// /////////////////////////////////////////////////////////////////////////////////////////
// VARIABLES IOCARDS ------------ ENTRADAS ------------
// /////////////////////////////////////////////////////////////////////////////////////////

Var 0916, name SW_Time_Date, Link IOCARD_SW, Device 15, Input 1, Type P // Botà³n TIME-DATE
{
IF &Modif_Year = 0 // Si NO estamos en activacion del control del Aà±o-Set (Botà³n SET)
{
  &Time_Date_Year = &Time_Date_Year + 1
  IF &Modif_DDMM > 0 // Si estoy modificando dia del mes o el mes
  {
    &Modif_DDMM = 0
  }
  IF &Modif_HHMM > 0 // Si estoy modificando dia hora o minutos
  {
    &Modif_HHMM = 0
  }
}
IF &Time_Date_Year > 4 // Comprobamos si nos salimos de margenes
{
  &Time_Date_Year = 1 // Ponemos a 1 
}
Call &Show_Display // Mostramos en displays el dato correspondiente
If &Estado_CHR = 3 // Si el CHR esta parado
{
  // &Aguja_Segundos = 9000 // Movemos la aguja de los segundos a 15 para ver los displays mejor
}
}
Var 0917, name SW_SET, Link IOCARD_SW, Device 15, Input 2, Type P // Botà³n SET
{
  IF &Time_Date_Year = 1 // Si estoy visualizando el aà±o
  {
    IF &Modif_Year = 0 // Si NO estoy modificando el aà±o
    {
      &Modif_Year = 1 // Activamos control modificacion aà±o
      &Year_to_Modif = &Zulu_Year_Set // Pasamos el aà±o a una vble para modificar
    }
    else
    {
      Call &Chk_Bisiesto // Comprobamos si es bisiesto
      call &calc_DayofYear
      &Day_of_Year = &DayofYear // Devolvemos el dà­a al FS para que lo modifique
      &Modif_Year = 0 // Desactivamos control modificacion aà±o
      &Zulu_Year_Set = &Year_to_Modif // Devolvemos el aà±o al FS para que lo modifique
      Call &Show_Display // Mostramos el aà±o
    }
  }
  IF &Time_Date_Year = 2 // Si estoy visualizando el dia del mes y el mes (DD.MM)
  {
    IF &Modif_DDMM = 0 // Si NO estoy modificando dia del mes y el mes
    {
      &Modif_DDMM = 1 // Activamos control modificacion Mes
      &MM_to_Modif = &Current_Month // Pasamos el mes a una vble para modificar
      &DD_to_Modif = &Day_of_Month
      &PARPADEO_U = 0
    }
    else
    {
      IF &Modif_DDMM = 1 // Si estamos modificando el mes pasamos a modificar el dà­a
      {
        Call &Chk_DiasDelMes // Calculamos cuantos dias tiene el mes que hemos modificado
        &Modif_DDMM = 2 // Activamos control modificacion Dà­a
        &DD_to_Modif = &Day_of_Month // Pasamos el dà­a a una vble para modificar
        &Disp_Month_Min = Delay &MM_to_Modif, 50
      }
      else // Terminamos de modificar asà­ que mandamos valores al FS
      {
        call &calc_DayofYear
        &Day_of_Year = &DayofYear // Devolvemos el dà­a al FS para que lo modifique
        &PARPADEO_U = 2
        &Modif_DDMM = 0
        call &Show_Display
        &show_Display = Delay 1, 50
      }
    }
  }
  IF &Time_Date_Year = 3 // Si estoy visualizando el dia del Hora y minutos (HH.MM)
  {
    IF &Modif_HHMM = 0 // Si NO estoy modificando Nada
    {
      &Modif_HHMM = 1 // Activamos control modificacion Minutos
      &MI_to_Modif = &Zulu_Minute // Pasamos minutos
      &HH_to_Modif = &Zulu_Hour // Pasamos Horas 
      &PARPADEO_U = 0
    }
    else
    {
      IF &Modif_HHMM = 1 // Si estamos modificando Minutos pasamos a modificar Horas
      {
        // Call &Chk_DiasDelMes 
        &Modif_HHMM = 2 // Activamos control modificacion Dà­a
        &HH_to_Modif = &Zulu_Hour // Pasamos el dà­a a una vble para modificar *OJO*
        &Disp_Month_Min = Delay &MI_to_Modif, 50
      }
      else // Terminamos de modificar asà­ que mandamos valores al FS
      {
        //call &calc_DayofYear
        //&Day_of_Year = &DayofYear // Devolvemos el dà­a al FS para que lo modifique *OJO*
        &Zulu_Hour = &HH_to_Modif
	&Zulu_Minute = &MI_to_Modif
        &PARPADEO_U = 2
        &Modif_HHMM = 0
        call &Show_Display
        &show_Display = Delay 1, 50
      }
    }
  }
}
Var 0924, name SW_CHR, Link IOCARD_SW, Device 15, Input 0 //  Botà³n CHR 
{
if &SW_CHR = 1 
{
if &CHR_ET_ToDisp = -1
{
  &CHR_ET_ToDisp = 0
  &Aguja_Segundos = 0
  &DECIMAL_C = 1
  &DECIMAL_D = 1
}
else
{ 
&DECIMAL_C = 1
Call &Ver_CHR
If &CHR_ET_ToDisp = 1 // Venimos de la Funcià³n ET
{
&CHR_ET_ToDisp = 0 // Acivamos control sobre el display para CHR
}
else // Ya estabamos en la funcià³n CHR 
{
&Estado_CHR = &Estado_CHR + 1 // Cambiamos el estado de CHR
}
If &Estado_CHR > 3 // Comprobamos limite del estado del CHR 
{ 
&Estado_CHR = 2 // 2 -> Inicia CHR o continàºa 3 -> STOP Cronà³metro.
}
If &Estado_CHR <> 2
{
  &PARPADEO_D = 2
}
}
}
}

Var 0925, name SW_ET, Link IOCARD_SW, Device 15, Input 6, type P // Botà³n ET
{
if &CHR_ET_ToDisp = -1
{
  &CHR_ET_ToDisp = 0
  &Aguja_Segundos = 0
  &DECIMAL_C = 1
  &DECIMAL_D = 1
} 
else
{
&DECIMAL_C = 0
Call &Ver_ET
If &CHR_ET_ToDisp = 0 // Venimos de la Funcià³n CHR
{
&CHR_ET_ToDisp = 1 // Acivamos control sobre el display para ET
}
else // Ya estabamos en la funcià³n ET
{
&Estado_ET = &Estado_ET + 1 // Cambiamos el estado de ET
}
If &Estado_ET > 3 // Comprobamos limite del estado del ET
{ 
&Estado_ET = 2 // 2 -> Inicia ET o continàºa 3 -> STOP ET
}
If &Estado_ET <> 2
{
  &PARPADEO_D = 2
}
}
}

Var 0926, Link IOCARD_SW, Device 15, Input 5, type P //  Botà³n RST
{
if &SW_CHR = 1 
{
  &CHR_ET_ToDisp = -1
  &Estado_CHR = 1
  &Estado_ET = 1
  &DECIMAL_C = 1
  &Aguja_Segundos = 45  
  &Disp_DWN_Min = -999999
  &Disp_DWN_Sec = -999999
  &DECIMAL_D = 0
  &CHR_Min = 0
  &CHR_Sec = 0
  &ET_Hr = 0
  &ET_Min = 0
  &ET_Sec = 0
 &DECIMAL_C = 0
}
else
{
if &CHR_ET_ToDisp = -1
{
  &CHR_ET_ToDisp = 0
  &Aguja_Segundos = 0
  &DECIMAL_C = 1
  &DECIMAL_D = 1
} 
else
{
If &CHR_ET_ToDisp = 0
{
&CHR_Min = 0 // Ponemos a cero los minutos del CHR
&CHR_Sec = 0 // Ponemos a cero los segundos del CHR
&Aguja_Segundos = 0
Call &Ver_CHR 
}
else
{
&ET_Hr = 0 // Ponemos a cero la hora del ET
&ET_Min = 0 // Ponemos a cero los minutos del ET
&ET_Sec = 0 // Ponemos a cero los segundos del ET
Call &Ver_ET
} 
}
}
}

Var 0927, Link IOCARD_SW, Device 15, Input 3, type P // Botà³n +
{
  IF &Modif_Year = 1 // Si estamos en activacion del control del aà±o
  {
    &Year_to_Modif = &Year_to_Modif + 1
    &Disp_Year = &Year_to_Modif
  }
  IF &Modif_DDMM = 1 // Si estamos en activacion del control del Mes
  {
    &MM_to_Modif = &MM_to_Modif + 1
    If &MM_to_Modif > 12
    {
      &MM_to_Modif = 1
    }
    &Disp_Month_Min = &MM_to_Modif 
  }
  IF &Modif_DDMM = 2 // Si estamos en activacion del control del Dà­a
  {
    &DD_to_Modif = &DD_to_Modif + 1
    If &DD_to_Modif > &Limit_DD_Mes 
    {
      &DD_to_Modif = 1
    }
    &Disp_Day_Hour = &DD_to_Modif 
  }
  IF &Modif_HHMM = 1 // Si estamos en activacion del control de Minutos
  {
    &MI_to_Modif = &MI_to_Modif + 1
    If &MI_to_Modif > 59
    {
      &MI_to_Modif = 0
    }
    &Disp_Month_Min = &MI_to_Modif 
  }
  IF &Modif_HHMM = 2 // Si estamos en activacion del control de Horas
  {
    &HH_to_Modif = &HH_to_Modif + 1
    If &HH_to_Modif > 23
    {
      &HH_to_Modif = 0
    }
    &Disp_Day_Hour = &HH_to_Modif 
  }
}
Var 0928, Link IOCARD_SW, Device 15, Input 4, type P // Botà³n -
{
IF &Modif_Year = 1 // Si estamos en activacion del control del aà±o
{
&Year_to_Modif = &Year_to_Modif - 1
&Disp_Year = &Year_to_Modif
}
IF &Modif_DDMM = 1 // Si estamos en activacion del control del Mes
{
&MM_to_Modif = &MM_to_Modif - 1
If &MM_to_Modif < 1
{
&MM_to_Modif = 12
}
&Disp_Month_Min = &MM_to_Modif 
}
IF &Modif_DDMM = 2 // Si estamos en activacion del control del Dà­a
{
&DD_to_Modif = &DD_to_Modif - 1
If &DD_to_Modif < 1
{
&DD_to_Modif = &Limit_DD_Mes 
}
&Disp_Day_Hour = &DD_to_Modif 
}
  IF &Modif_HHMM = 1 // Si estamos en activacion del control de Minutos
  {
    &MI_to_Modif = &MI_to_Modif - 1
    If &MI_to_Modif < 0
    {
      &MI_to_Modif = 59
    }
    &Disp_Month_Min = &MI_to_Modif 
  }
  IF &Modif_HHMM = 2 // Si estamos en activacion del control de Horas
  {
    &HH_to_Modif = &HH_to_Modif - 1
    If &HH_to_Modif < 0
    {
      &HH_to_Modif = 23
    }
    &Disp_Day_Hour = &HH_to_Modif 
  }
}


// /////////////////////////////////////////////////////////////////////////////////////////
// SUBRUTINAS
// /////////////////////////////////////////////////////////////////////////////////////////


Var 2000, name Show_Display, Link SUBRUTINE // Muestra el aà±o
{
&PARPADEO_U = 0

IF &Time_Date_Year = 1 // Visualizo el aà±o
{
&Disp_Year = -999999 // Apagamos el aà±o 
&Disp_Year = &Zulu_Year_Set 
}
IF &Time_Date_Year = 2 // Visualizo el dia y mes
{
&Disp_Day_Hour = &Day_of_Month 
&Disp_Month_Min = &Current_Month 
&PARPADEO_U = 2
}
IF &Time_Date_Year = 3 // Visualizo la hora Zulu y Minutos
{
&Disp_Day_Hour = &Zulu_Hour 
&Disp_Month_Min = &Zulu_Minute 
&PARPADEO_U = 1
}
IF &Time_Date_Year = 4 // Visualizo Minutos y Segundos
{
&Disp_Day_Hour = &Zulu_Minute 
&Disp_Month_Min = &Clock_Seconds 
&PARPADEO_U = 1
}
}
Var 2002, name Ver_CHR, Link SUBRUTINE // Pasa CHR al display
{
&Disp_DWN_Min = &CHR_Min // Mostramos los minutos del CHR en Display Down
&Disp_DWN_Sec = &CHR_Sec // Mostramos los minutos del CHR en Display Down
}
Var 2004, name Ver_ET, Link SUBRUTINE // Pasa ET al display
{
If &ET_Hr = 0 // Durante la primera hora mostramos MM:SS
{
&Disp_DWN_Min = &ET_Min // Mostramos los minutos del ET en Display Down
&Disp_DWN_Sec = &ET_Sec // Mostramos los segundos del ET en Display Down 
} 
else // Despues mostramos HH:MM
{
&Disp_DWN_Min = &ET_Hr // Mostramos la hora del ET en Display Down
&Disp_DWN_Sec = &ET_Min // Mostramos los minutos del ET en Display Down
}
}
Var 2006, name Chk_Bisiesto, Link SUBRUTINE // Comprueba si el aà±o es bisis'esto
{ 
L0 = MOD &Zulu_Year_Set ,4 // L0 acumula el resto de la divisià³n
IF L0 = 0
{
&Chk_Bisiesto = 1 // No Bisiesto = 0 Bisiesto = 1
}
ELSE
{
L0 = MOD &Zulu_Year_Set ,400
IF L0 = 0
{
L0 = MOD &Zulu_Year_Set ,100
IF L0 = 0
{
&Chk_Bisiesto = 1 // No Bisiesto = 0 Bisiesto = 1
} 
ELSE
{
&Chk_Bisiesto = 0 // No Bisiesto = 0 Bisiesto = 1
}
}
ELSE
{
&Chk_Bisiesto = 0 // No Bisiesto = 0 Bisiesto = 1
}
}
}
Var 2008, name Chk_DiasDelMes, Link SUBRUTINE // Calcula cuantos dà­as tiene el mes
// 31 dà­as tienen ENE, MAR, MAY, JUL, AGO, OCT, DIC
// 30 dà­as tienen ABR, JUN, SEP, NOV
// 28 dà­as tiene FEB excepto los bisiestos que tiene 29
{
If &MM_to_Modif = 1 // ENE
{
&Limit_DD_Mes = 31
}
If &MM_to_Modif = 2 // FEB
{
If &Chk_Bisiesto = 0 // Si no es bisiesto
{ 
&Limit_DD_Mes = 28
}
else // Si es bisiesto
{
&Limit_DD_Mes = 29
}
}
If &MM_to_Modif = 3 // MAR
{
&Limit_DD_Mes = 31
}
If &MM_to_Modif = 4 // ABR
{
&Limit_DD_Mes = 30
}
If &MM_to_Modif = 5 // MAY
{
&Limit_DD_Mes = 31
}
If &MM_to_Modif = 6 // JUN
{
&Limit_DD_Mes = 30
}
If &MM_to_Modif = 7 // JUL
{
&Limit_DD_Mes = 31
}
If &MM_to_Modif = 8 // AGO
{
&Limit_DD_Mes = 31
}
If &MM_to_Modif = 9 // SEP
{
&Limit_DD_Mes = 30
}
If &MM_to_Modif = 10 // OCT
{
&Limit_DD_Mes = 31
}
If &MM_to_Modif = 11 // NOV
{
&Limit_DD_Mes = 30
}
If &MM_to_Modif = 12 // DIC
{
&Limit_DD_Mes = 31
}
}

Var 2010, name Calc_DayofYear, Link SUBRUTINE // Calcula el dia del mes en relacion al aà±o total
// // Asà­ el 1 de ENE es el calc_DayofYear = 1 y el 
// // 31 de DIC es el 365 excepto en bisiesto que es el 366
{
If &MM_to_Modif = 1 // ENE 31 
{
&DayofYear = &DD_to_Modif // Paso a Calc_DayofYear el dà­a del mes de Enero
}
If &MM_to_Modif = 2 // FEB 28
{
&DayofYear = &DD_to_Modif + 31 // Le sumo a los dà­as del mes los del mes anterior
}
If &MM_to_Modif = 3 // MAR 31 
{
&DayofYear = &DD_to_Modif + 59 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif = 4 // ABR 30 
{
&DayofYear = &DD_to_Modif + 90 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif = 5 // MAY 31 
{
&DayofYear = &DD_to_Modif + 120 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif = 6 // JUN 30 
{
&DayofYear = &DD_to_Modif + 151 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif = 7 // JUL 31 
{
&DayofYear = &DD_to_Modif + 181 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif = 8 // AGO 31 
{
&DayofYear = &DD_to_Modif + 212 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif = 9 // SEP 30 
{
&DayofYear = &DD_to_Modif + 243 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif = 10 // OCT 31 
{
&DayofYear = &DD_to_Modif + 273 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif = 11 // NOV 30 
{
&DayofYear = &DD_to_Modif + 304 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif = 12 // DIC 31 
{
&DayofYear = &DD_to_Modif + 334 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif > 1
{
If &Chk_Bisiesto = 1 // Si es bisiesto
{ 
&DayofYear = &DayofYear + 1
}
} 
&Current_Month = &MM_to_Modif
&Day_of_Month = &DD_to_Modif
}
Var 2012, name BLINK, Link SUBRUTINE
{
  IF &BLINK = 0
  {
    IF &PARPADEO_U = 0   // No parpadea y queda apagado
    {
       &DECIMAL_U = 0
    }
    IF &PARPADEO_U = 1  // Parpadea
    {
       &DECIMAL_U = 1
       &BLINK = DELAY 1, 50
    }
    IF &PARPADEO_U = 2   // No parpadea y queda encendido
    {
       &DECIMAL_U = 1
    }
  }
  ELSE
  {
    IF &PARPADEO_U = 0
    {
       &DECIMAL_U = 0
    }
    IF &PARPADEO_U = 1
    {
       &DECIMAL_U = 0
    }
    IF &PARPADEO_U = 2
    {
       &DECIMAL_U = 1
    }
  }
}
Var 2014, name BLINK2, Link SUBRUTINE
{
  IF &BLINK2 = 0
  {
    IF &PARPADEO_D = 0   // No parpadea y queda apagado
    {
       &DECIMAL_D = 0
    }
    IF &PARPADEO_D = 1  // Parpadea
    {
       &DECIMAL_D = 1
       &BLINK2 = DELAY 1, 50
    }
    IF &PARPADEO_D = 2   // No parpadea y queda encendido
    {
       &DECIMAL_D = 1
    }
  }
  ELSE
  {
    IF &PARPADEO_D = 0
    {
       &DECIMAL_D = 0
    }
    IF &PARPADEO_D = 1
    {
       &DECIMAL_D = 0
    }
    IF &PARPADEO_D = 2
    {
       &DECIMAL_D = 1
    }
  }
}


// //////////////////////////////////////
// END CHRONO CAPT
// //////////////////////////////////////





// ///////////////////////////
// CHRONO F/O
// ///////////////////////////

Var 0002, Value 0 // Inicializacion de valores de variables
{
&D_CHRBRIGHT2 = 120
&PARPADEO_U2 = 0
&PARPADEO_D2 = 1
&2Date_Year = 3 
&Disp_Year2 = &Zulu_Year_Set2
&Year_to_Modif2 = &Zulu_Year_Set2 // Pasamos el aà±o a una vble interna
&Modif_Year2 = 0
&Estado_CHR2 = 1
&Estado_ET2 = 1
&CHR_ET_ToDisp2 = -1
&DECIMAL_C2 = 0
&Aguja_Segs2 = 45
}

// /////////////////////////////////////////////////////////////////////////////////////////
// VARIABLES PROPIAS
// /////////////////////////////////////////////////////////////////////////////////////////

Var 4000, name 2Date_Year // Indice para digitos Time-Date-Year
Var 4002, name Modif_Year2 // Activamos control modificacion aà±o. 0=Descativado, 1=Activado
Var 4004, name Modif_DDMM2 // Activamos control modificacion Dia.Mes -> 0=Descativado, 1=Mes 2=Dà­a
Var 4006, name Modif_HHMM2 // Activamos control modificacion Hora.Minutos-> 0=Descativado, 1=Minutos 2=Horas
Var 4008, name Year_to_Modif2 // Guarda el aà±o para modificar
Var 4010, name DD_to_Modif2 // Guarda el Dia para modificar
Var 4012, name MM_to_Modif2 // Guarda el Mes para modificar
Var 4014, name CHR_ET_ToDisp2 // Controla si vemos el CHR o el ET en el display inferior. 0=CHR 1=ET
Var 4016, name CHR_Min2 // Acumula los Minutos del cronometro
Var 4018, name CHR_Sec2 // Acumula los Segundos del cronometro
Var 4020, name Estado_CHR2 // COntrola el estado del Botà³n CHR. 0 -> Pone Crono en display
// 2 -> Inicia CHR o continàºa
// 3 -> STOP Cronà³metro.
Var 4022, name ET_Hr2 // Acumula las Horas del ET (Elapsed Time)
Var 4024, name ET_Min2 // Acumula los Minutos del ET (Elapsed Time)
Var 4026, name ET_Sec2 // Acumula los Segundos del ET (Elapsed Time)
Var 4028, name Estado_ET2 // COntrola el estado del Botà³n ET. 0 -> Pone ET en display
// 2 -> Inicia ET o continàºa
// 3 -> STOP ET 
Var 4030, name Limit_DD_Mes2 // Almacena el total de dà­as que tiene el mes activo
Var 4032, name DayofYear2 // Almacena el dà­a del aà±o


Var 4034, name M_MOTOR2, Link IOCARD_MOTOR, Device 16, Output 1, Aceleration 200
Var 4036, name Aguja_Segs2
{
    L0 = 4065 / 60
    L0 = L0 * &Aguja_Segs2
    &M_MOTOR2 = ROUND L0
}
Var 4038, name PARPADEO_U2, link SUBRUTINE
{
  &BLINK3 = 0
}
Var 4040, name PARPADEO_D2, Link SUBRUTINE
{
  &BLINK4 = 0
}
Var 4042, name HH_to_Modif2 // Guarda la hora para modificar
Var 4044, name MI_to_Modif2 // Guarda los minutos para modificar

// /////////////////////////////////////////////////////////////////////////////////////////
// VARIABLES FSUIPC
// /////////////////////////////////////////////////////////////////////////////////////////

Var 4046, name Clock_Seconds2, link FSUIPC_INOUT, offset $023A, length 1 // Segundos del Reloj del FS
{
IF &2Date_Year = 1 // Visualizo el aà±o
{
IF &Modif_Year2 = 1 // Si estamos en activacion del control del aà±o 
{
&Disp_Year2 = &Year_to_Modif2
&Disp_Year2 = Delay -999999, 50
}
}
IF &2Date_Year = 2 // Visualizo el dia y mes
{
  IF &Modif_DDMM2 = 1 // Si estamos en activacion del control modificacion Mes
  {
    &DispMonthMin2 = &MM_to_Modif2
    &DispMonthMin2 = Delay -999999, 50
    &Disp_Day_Hour2 = &DD_to_Modif2
  }
  IF &Modif_DDMM2 = 2 // Si estamos en activacion del control modificacion Dà­a
  {
    &Disp_Day_Hour2 = &DD_to_Modif2 
    &Disp_Day_Hour2 = Delay -999999, 50 
    &DispMonthMin2 = &MM_to_Modif2
  }
}
IF &2Date_Year = 3 // Visualizo la hora Zulu
{
  CALL &Show_Display2
  IF &Modif_HHMM2 = 1 // Si estamos en activacion del control modificacion Minutos
  {
    &DispMonthMin2 = &MI_to_Modif2
    &DispMonthMin2 = Delay -999999, 50
    &Disp_Day_Hour2 = &HH_to_Modif2
  }
  IF &Modif_HHMM2 = 2 // Si estamos en activacion del control modificacion Horas
  {
    &Disp_Day_Hour2 = &HH_to_Modif2 
    &Disp_Day_Hour2 = Delay -999999, 50 
    &DispMonthMin2 = &MI_to_Modif2
  }
}

IF &2Date_Year = 4 // Visualizo Minutos y Segundos
{
  CALL &Show_Display2
}

If &Estado_CHR2 = 2 // 2 -> Inicia CHR o continàºa
{
IF &CHR_ET_ToDisp2 = 0 
{
  &PARPADEO_D2 = 1
}
&CHR_Sec2 = &CHR_Sec2 + 1
If &CHR_Sec2 > 59
{
&CHR_Sec2 = 0
&CHR_Min2 = &CHR_Min2 + 1
If &CHR_Min2 > 59 // Cuando llegamos a 1 hora se pone a cero
{
&CHR_Min2 = 0
}
}
&Aguja_Segs2 = &CHR_Sec2 // Movemos la aguja de los segundos si el CHR esta funcionando
}

If &Estado_ET2 = 2 // 2 -> Inicia ET o continàºa
{
IF &CHR_ET_ToDisp2 = 1 
{
  &PARPADEO_D2 = 1
}

&ET_Sec2 = &ET_Sec2 + 1
If &ET_Sec2 > 59
{
&ET_Sec2 = 0
&ET_Min2 = &ET_Min2 + 1
If &ET_Min2 > 59
{
&ET_Min2 = 0
&ET_Hr2 = &ET_Hr2 + 1
}
}
}
If &CHR_ET_ToDisp2 = 0 // Mostramos el CHR en los displays inferiores
{
Call &Ver_CHR2
}
else // Mostramos el ET en los displays inferiores
{
if &CHR_ET_ToDisp2 = 1
{
Call &Ver_ET2
}
}
}

Var 4048, name Zulu_Hour2, link FSUIPC_INOUT, offset $023B, length 1 // Hora Zulu. Lectura y escritura
{
CALL &Show_Display2
}

Var 4050, name Zulu_Minute2, link FSUIPC_INOUT, offset $023C, length 1 // Minutos Zulu. Lectura y escritura
{
CALL &Show_Display2
}

Var 4052, name Day_of_Year2, link FSUIPC_INOUT, offset $023E, length 2 // Numero del dà­a del aà±o. Lectura y escritura. Numero total de dias al aà±o


Var 4054, name DayofMonth2, link FSUIPC_IN, offset $023D, length 1 // Dà­a del mes correspondiente. Sà³lo lectura
{
CALL &Show_Display2
}

Var 4056, name Current_Month2, link FSUIPC_IN, offset $0242, length 1 // Numero del mes. Sà³lo lectura
{
CALL &Show_Display2
}

Var 4058, name Zulu_Year_Set2, link FSUIPC_INOUT, offset $0240, length 2 // Aà±o. Lectura y escritura
{
&Year_to_Modif2 = &Zulu_Year_Set2
Call &Chk_Bisiesto2 // Comprobamos si es bisiesto
}

// /////////////////////////////////////////////////////////////////////////////////////////
// VARIABLES IOCARDS ------------ DISPLAYS ------------
// /////////////////////////////////////////////////////////////////////////////////////////

Var 4060, name Disp_Year2, Link IOCARD_DISPLAY, Device 16, Digit 0, Numbers 4 // UP Displays Year
Var 4062, name Disp_Day_Hour2, Link IOCARD_DISPLAY, Device 16, Digit 2, Numbers 2 // UP Displays Day or Hour
Var 4064, name DispMonthMin2, Link IOCARD_DISPLAY, Device 16, Digit 0, Numbers 2 // UP Displays Month or Minutes
Var 4068, name Disp_DWN_Min2, Link IOCARD_DISPLAY, Device 16, Digit 6, Numbers 2 // Down Displays CHR - ET -> Min
Var 4070, name Disp_DWN_Sec2, Link IOCARD_DISPLAY, Device 16, Digit 4, Numbers 2 // Down Displays CHR - ET -> Sec
Var 4072, name D_CHRBRIGHT2, Link IOCARD_DISPLAY, Device 16, Digit 16, Numbers 3

Var 4074, name DECIMAL_U2, Link IOCARD_OUT, Device 16, Output 20
Var 4076, name DECIMAL_D2, Link IOCARD_OUT, Device 16, Output 21
Var 4078, name DECIMAL_C2, Link IOCARD_OUT, Device 16, Output 22

// /////////////////////////////////////////////////////////////////////////////////////////
// VARIABLES IOCARDS ------------ ENTRADAS ------------
// /////////////////////////////////////////////////////////////////////////////////////////

Var 4080, name SW_Time_Date2, Link IOCARD_SW, Device 16, Input 1, Type P // Botà³n TIME-DATE
{
IF &Modif_Year2 = 0 // Si NO estamos en activacion del control del Aà±o-Set (Botà³n SET)
{
  &2Date_Year = &2Date_Year + 1
  IF &Modif_DDMM2 > 0 // Si estoy modificando dia del mes o el mes
  {
    &Modif_DDMM2 = 0
  }
  IF &Modif_HHMM2 > 0 // Si estoy modificando dia hora o minutos
  {
    &Modif_HHMM2 = 0
  }
}
IF &2Date_Year > 4 // Comprobamos si nos salimos de margenes
{
  &2Date_Year = 1 // Ponemos a 1 
}
Call &Show_Display2 // Mostramos en displays el dato correspondiente
If &Estado_CHR2 = 3 // Si el CHR esta parado
{
  // &Aguja_Segs2 = 9000 // Movemos la aguja de los segundos a 15 para ver los displays mejor
}
}

Var 4082, name SW_SET2, Link IOCARD_SW, Device 16, Input 2, Type P // Botà³n SET
{
  IF &2Date_Year = 1 // Si estoy visualizando el aà±o
  {
    IF &Modif_Year2 = 0 // Si NO estoy modificando el aà±o
    {
      &Modif_Year2 = 1 // Activamos control modificacion aà±o
      &Year_to_Modif2 = &Zulu_Year_Set2 // Pasamos el aà±o a una vble para modificar
    }
    else
    {
      Call &Chk_Bisiesto2 // Comprobamos si es bisiesto
      call &Calc_DayYear2
      &Day_of_Year2 = &DayofYear2 // Devolvemos el dà­a al FS para que lo modifique
      &Modif_Year2 = 0 // Desactivamos control modificacion aà±o
      &Zulu_Year_Set2 = &Year_to_Modif2 // Devolvemos el aà±o al FS para que lo modifique
      Call &Show_Display2 // Mostramos el aà±o
    }
  }
  IF &2Date_Year = 2 // Si estoy visualizando el dia del mes y el mes (DD.MM)
  {
    IF &Modif_DDMM2 = 0 // Si NO estoy modificando dia del mes y el mes
    {
      &Modif_DDMM2 = 1 // Activamos control modificacion Mes
      &MM_to_Modif2 = &Current_Month2 // Pasamos el mes a una vble para modificar
      &DD_to_Modif2 = &DayofMonth2
      &PARPADEO_U2 = 0
    }
    else
    {
      IF &Modif_DDMM2 = 1 // Si estamos modificando el mes pasamos a modificar el dà­a
      {
        Call &Chk_DiasMes2 // Calculamos cuantos dias tiene el mes que hemos modificado
        &Modif_DDMM2 = 2 // Activamos control modificacion Dà­a
        &DD_to_Modif2 = &DayofMonth2 // Pasamos el dà­a a una vble para modificar
        &DispMonthMin2 = Delay &MM_to_Modif2, 50
      }
      else // Terminamos de modificar asà­ que mandamos valores al FS
      {
        call &Calc_DayYear2
        &Day_of_Year2 = &DayofYear2 // Devolvemos el dà­a al FS para que lo modifique
        &PARPADEO_U2 = 2
        &Modif_DDMM2 = 0
        call &Show_Display2
        &show_Display2 = Delay 1, 50
      }
    }
  }
  IF &2Date_Year = 3 // Si estoy visualizando el dia del Hora y minutos (HH.MM)
  {
    IF &Modif_HHMM2 = 0 // Si NO estoy modificando Nada
    {
      &Modif_HHMM2 = 1 // Activamos control modificacion Minutos
      &MI_to_Modif2 = &Zulu_Minute2 // Pasamos minutos
      &HH_to_Modif2 = &Zulu_Hour2 // Pasamos Horas 
      &PARPADEO_U2 = 0
    }
    else
    {
      IF &Modif_HHMM2 = 1 // Si estamos modificando Minutos pasamos a modificar Horas
      {
        // Call &Chk_DiasMes2
        &Modif_HHMM2 = 2 // Activamos control modificacion Dà­a
        &HH_to_Modif2 = &Zulu_Hour2 // Pasamos el dà­a a una vble para modificar *OJO*
        &DispMonthMin2 = Delay &MI_to_Modif2, 50
      }
      else // Terminamos de modificar asà­ que mandamos valores al FS
      {
        //call &Calc_DayYear2
        //&Day_of_Year2 = &DayofYear2 // Devolvemos el dà­a al FS para que lo modifique *OJO*
        &Zulu_Hour2 = &HH_to_Modif2
	&Zulu_Minute2 = &MI_to_Modif2
        &PARPADEO_U2 = 2
        &Modif_HHMM2 = 0
        call &Show_Display2
        &show_Display2 = Delay 1, 50
      }
    }
  }
}


Var 4084, name SW_CHR2, Link IOCARD_SW, Device 16, Input 0 // Botà³n CHR 
{
if &SW_CHR2 = 1 
{
if &CHR_ET_ToDisp2 = -1
{
  &CHR_ET_ToDisp2 = 0
  &Aguja_Segs2 = 0
  &DECIMAL_C2 = 1
  &DECIMAL_D2 = 1
}
else
{ 
&DECIMAL_C2 = 1
Call &Ver_CHR2
If &CHR_ET_ToDisp2 = 1 // Venimos de la Funcià³n ET
{
&CHR_ET_ToDisp2 = 0 // Acivamos control sobre el display para CHR
}
else // Ya estabamos en la funcià³n CHR 
{
&Estado_CHR2 = &Estado_CHR2 + 1 // Cambiamos el estado de CHR
}
If &Estado_CHR2 > 3 // Comprobamos limite del estado del CHR 
{ 
&Estado_CHR2 = 2 // 2 -> Inicia CHR o continàºa 3 -> STOP Cronà³metro.
}
If &Estado_CHR2 <> 2
{
  &PARPADEO_D2 = 2
}
}
}
}

Var 4086, name SW_ET2, Link IOCARD_SW, Device 16, Input 6, type P //  Botà³n ET
{
if &CHR_ET_ToDisp2 = -1
{
  &CHR_ET_ToDisp2 = 0
  &Aguja_Segs2 = 0
  &DECIMAL_C2 = 1
  &DECIMAL_D2 = 1
} 
else
{

&DECIMAL_C2 = 0
Call &Ver_ET2
If &CHR_ET_ToDisp2 = 0 // Venimos de la Funcià³n CHR
{
&CHR_ET_ToDisp2 = 1 // Acivamos control sobre el display para ET
}
else // Ya estabamos en la funcià³n ET
{
&Estado_ET2 = &Estado_ET2 + 1 // Cambiamos el estado de ET
}
If &Estado_ET2 > 3 // Comprobamos limite del estado del ET
{ 
&Estado_ET2 = 2 // 2 -> Inicia ET o continàºa 3 -> STOP ET
}
If &Estado_ET2 <> 2
{
  &PARPADEO_D2 = 2
}
}
}

Var 4088, Link IOCARD_SW, Device 16, Input 5, type P // Botà³n RST
{
if &SW_CHR2 = 1 
{
  &CHR_ET_ToDisp2 = -1
  &Estado_CHR2 = 1
  &Estado_ET2 = 1
  &DECIMAL_C2 = 1
  &Aguja_Segs2 = 45  
  &Disp_DWN_Min2 = -999999
  &Disp_DWN_Sec2 = -999999
  &DECIMAL_D2 = 0
  &CHR_Min2 = 0
  &CHR_Sec2 = 0
  &ET_Hr2 = 0
  &ET_Min2 = 0
  &ET_Sec2 = 0
 &DECIMAL_C2 = 0
}
else
{
if &CHR_ET_ToDisp2 = -1
{
  &CHR_ET_ToDisp2 = 0
  &Aguja_Segs2 = 0
  &DECIMAL_C2 = 1
  &DECIMAL_D2 = 1
} 
else
{

If &CHR_ET_ToDisp2 = 0
{
&CHR_Min2 = 0 // Ponemos a cero los minutos del CHR
&CHR_Sec2 = 0 // Ponemos a cero los segundos del CHR
&Aguja_Segs2 = 0
Call &Ver_CHR2 
}
else
{
&ET_Hr2 = 0 // Ponemos a cero la hora del ET
&ET_Min2 = 0 // Ponemos a cero los minutos del ET
&ET_Sec2 = 0 // Ponemos a cero los segundos del ET
Call &Ver_ET2
} 
}
}
}

Var 4090, Link IOCARD_SW, Device 16, Input 3, type P // Botà³n +
{
  IF &Modif_Year2 = 1 // Si estamos en activacion del control del aà±o
  {
    &Year_to_Modif2 = &Year_to_Modif2 + 1
    &Disp_Year2 = &Year_to_Modif2
  }
  IF &Modif_DDMM2 = 1 // Si estamos en activacion del control del Mes
  {
    &MM_to_Modif2 = &MM_to_Modif2 + 1
    If &MM_to_Modif2 > 12
    {
      &MM_to_Modif2 = 1
    }
    &DispMonthMin2 = &MM_to_Modif2 
  }
  IF &Modif_DDMM2 = 2 // Si estamos en activacion del control del Dà­a
  {
    &DD_to_Modif2 = &DD_to_Modif2 + 1
    If &DD_to_Modif2 > &Limit_DD_Mes2 
    {
      &DD_to_Modif2 = 1
    }
    &Disp_Day_Hour2 = &DD_to_Modif2 
  }
  IF &Modif_HHMM2 = 1 // Si estamos en activacion del control de Minutos
  {
    &MI_to_Modif2 = &MI_to_Modif2 + 1
    If &MI_to_Modif2 > 59
    {
      &MI_to_Modif2 = 0
    }
    &DispMonthMin2 = &MI_to_Modif2 
  }
  IF &Modif_HHMM2 = 2 // Si estamos en activacion del control de Horas
  {
    &HH_to_Modif2 = &HH_to_Modif2 + 1
    If &HH_to_Modif2 > 23
    {
      &HH_to_Modif2 = 0
    }
    &Disp_Day_Hour2 = &HH_to_Modif2 
  }
}


Var 4092, Link IOCARD_SW, Device 16, Input 4, type P // Botà³n -
{
IF &Modif_Year2 = 1 // Si estamos en activacion del control del aà±o
{
&Year_to_Modif2 = &Year_to_Modif2 - 1
&Disp_Year2 = &Year_to_Modif2
}
IF &Modif_DDMM2 = 1 // Si estamos en activacion del control del Mes
{
&MM_to_Modif2 = &MM_to_Modif2 - 1
If &MM_to_Modif2 < 1
{
&MM_to_Modif2 = 12
}
&DispMonthMin2 = &MM_to_Modif2 
}
IF &Modif_DDMM2 = 2 // Si estamos en activacion del control del Dà­a
{
&DD_to_Modif2 = &DD_to_Modif2 - 1
If &DD_to_Modif2 < 1
{
&DD_to_Modif2 = &Limit_DD_Mes2 
}
&Disp_Day_Hour2 = &DD_to_Modif2 
}
IF &Modif_HHMM2 = 1 // Si estamos en activacion del control de Minutos
 {
  &MI_to_Modif2 = &MI_to_Modif2 - 1
  If &MI_to_Modif2 < 0
   {
    &MI_to_Modif2 = 59
   }
   &DispMonthMin2 = &MI_to_Modif2 
  }
  IF &Modif_HHMM2 = 2 // Si estamos en activacion del control de Horas
  {
    &HH_to_Modif2 = &HH_to_Modif2 - 1
    If &HH_to_Modif2 < 0
    {
      &HH_to_Modif2 = 23
    }
    &Disp_Day_Hour2 = &HH_to_Modif2 
  }
}


// /////////////////////////////////////////////////////////////////////////////////////////
// SUBRUTINAS
// /////////////////////////////////////////////////////////////////////////////////////////


Var 4094, name Show_Display2, Link SUBRUTINE // Muestra el aà±o
{
&PARPADEO_U2 = 0
IF &2Date_Year = 1 // Visualizo el aà±o
{
&Disp_Year2 = -999999 // Apagamos el aà±o 
&Disp_Year2 = &Zulu_Year_Set2 
}
IF &2Date_Year = 2 // Visualizo el dia y mes
{
&Disp_Day_Hour2 = &DayofMonth2 
&DispMonthMin2 = &Current_Month2 
&PARPADEO_U2 = 2
}
IF &2Date_Year = 3 // Visualizo la hora Zulu y Minutos
{
&Disp_Day_Hour2 = &Zulu_Hour2 
&DispMonthMin2 = &Zulu_Minute2 
&PARPADEO_U2 = 1
}
IF &2Date_Year = 4 // Visualizo Minutos y Segundos
{
&Disp_Day_Hour2 = &Zulu_Minute2 
&DispMonthMin2 = &Clock_Seconds2 
&PARPADEO_U2 = 1
}
}

Var 4096, name Ver_CHR2, Link SUBRUTINE // Pasa CHR al display
{
&Disp_DWN_Min2 = &CHR_Min2 // Mostramos los minutos del CHR en Display Down
&Disp_DWN_Sec2 = &CHR_Sec2 // Mostramos los minutos del CHR en Display Down
}

Var 4098, name Ver_ET2, Link SUBRUTINE // Pasa ET al display
{
If &ET_Hr2 = 0 // Durante la primera hora mostramos MM:SS
{
&Disp_DWN_Min2 = &ET_Min2 // Mostramos los minutos del ET en Display Down
&Disp_DWN_Sec2 = &ET_Sec2 // Mostramos los segundos del ET en Display Down 
} 
else // Despues mostramos HH:MM
{
&Disp_DWN_Min2 = &ET_Hr2 // Mostramos la hora del ET en Display Down
&Disp_DWN_Sec2 = &ET_Min2 // Mostramos los minutos del ET en Display Down
}
}

Var 4100, name Chk_Bisiesto2, Link SUBRUTINE // Comprueba si el aà±o es bisis'esto
{ 
L0 = MOD &Zulu_Year_Set2 ,4 // L0 acumula el resto de la divisià³n
IF L0 = 0
{
&Chk_Bisiesto2 = 1 // No Bisiesto = 0 Bisiesto = 1
}
ELSE
{
L0 = MOD &Zulu_Year_Set2 ,400
IF L0 = 0
{
L0 = MOD &Zulu_Year_Set2 ,100
IF L0 = 0
{
&Chk_Bisiesto2 = 1 // No Bisiesto = 0 Bisiesto = 1
} 
ELSE
{
&Chk_Bisiesto2 = 0 // No Bisiesto = 0 Bisiesto = 1
}
}
ELSE
{
&Chk_Bisiesto2 = 0 // No Bisiesto = 0 Bisiesto = 1
}
}
}

Var 4102, name Chk_DiasMes2, Link SUBRUTINE // Calcula cuantos dà­as tiene el mes
// 31 dà­as tienen ENE, MAR, MAY, JUL, AGO, OCT, DIC
// 30 dà­as tienen ABR, JUN, SEP, NOV
// 28 dà­as tiene FEB excepto los bisiestos que tiene 29
{
If &MM_to_Modif2 = 1 // ENE
{
&Limit_DD_Mes2 = 31
}
If &MM_to_Modif2 = 2 // FEB
{
If &Chk_Bisiesto2 = 0 // Si no es bisiesto
{ 
&Limit_DD_Mes2 = 28
}
else // Si es bisiesto
{
&Limit_DD_Mes2 = 29
}
}
If &MM_to_Modif2 = 3 // MAR
{
&Limit_DD_Mes2 = 31
}
If &MM_to_Modif2 = 4 // ABR
{
&Limit_DD_Mes2 = 30
}
If &MM_to_Modif2 = 5 // MAY
{
&Limit_DD_Mes2 = 31
}
If &MM_to_Modif2 = 6 // JUN
{
&Limit_DD_Mes2 = 30
}
If &MM_to_Modif2 = 7 // JUL
{
&Limit_DD_Mes2 = 31
}
If &MM_to_Modif2 = 8 // AGO
{
&Limit_DD_Mes2 = 31
}
If &MM_to_Modif2 = 9 // SEP
{
&Limit_DD_Mes2 = 30
}
If &MM_to_Modif2 = 10 // OCT
{
&Limit_DD_Mes2 = 31
}
If &MM_to_Modif2 = 11 // NOV
{
&Limit_DD_Mes2 = 30
}
If &MM_to_Modif2 = 12 // DIC
{
&Limit_DD_Mes2 = 31
}
}

Var 4104, name Calc_DayYear2, Link SUBRUTINE // Calcula el dia del mes en relacion al aà±o total
// // Asà­ el 1 de ENE es el Calc_DayYear2 = 1 y el 
// // 31 de DIC es el 365 excepto en bisiesto que es el 366
{
If &MM_to_Modif2 = 1 // ENE 31 
{
&DayofYear2 = &DD_to_Modif2 // Paso a Calc_DayYear2 el dà­a del mes de Enero
}
If &MM_to_Modif2 = 2 // FEB 28
{
&DayofYear2 = &DD_to_Modif2 + 31 // Le sumo a los dà­as del mes los del mes anterior
}
If &MM_to_Modif2 = 3 // MAR 31 
{
&DayofYear2 = &DD_to_Modif2 + 59 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif2 = 4 // ABR 30 
{
&DayofYear2 = &DD_to_Modif2 + 90 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif2 = 5 // MAY 31 
{
&DayofYear2 = &DD_to_Modif2 + 120 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif2 = 6 // JUN 30 
{
&DayofYear2 = &DD_to_Modif2 + 151 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif2 = 7 // JUL 31 
{
&DayofYear2 = &DD_to_Modif2 + 181 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif2 = 8 // AGO 31 
{
&DayofYear2 = &DD_to_Modif2 + 212 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif2 = 9 // SEP 30 
{
&DayofYear2 = &DD_to_Modif2 + 243 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif2 = 10 // OCT 31 
{
&DayofYear2 = &DD_to_Modif2 + 273 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif2 = 11 // NOV 30 
{
&DayofYear2 = &DD_to_Modif2 + 304 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif2 = 12 // DIC 31 
{
&DayofYear2 = &DD_to_Modif2 + 334 // Le sumo a los dà­as del mes los de los meses anteriores
}
If &MM_to_Modif2 > 1
{
If &Chk_Bisiesto2 = 1 // Si es bisiesto
{ 
&DayofYear2 = &DayofYear2 + 1
}
} 
&Current_Month2 = &MM_to_Modif2
&DayofMonth2 = &DD_to_Modif2
}
Var 4106, name BLINK3, Link SUBRUTINE
{
  IF &BLINK3 = 0
  {
    IF &PARPADEO_U2 = 0   // No parpadea y queda apagado
    {
       &DECIMAL_U2 = 0
    }
    IF &PARPADEO_U2 = 1  // Parpadea
    {
       &DECIMAL_U2 = 1
       &BLINK3 = DELAY 1, 50
    }
    IF &PARPADEO_U2 = 2   // No parpadea y queda encendido
    {
       &DECIMAL_U2 = 1
    }
  }
  ELSE
  {
    IF &PARPADEO_U2 = 0
    {
       &DECIMAL_U2 = 0
    }
    IF &PARPADEO_U2 = 1
    {
       &DECIMAL_U2 = 0
    }
    IF &PARPADEO_U2 = 2
    {
       &DECIMAL_U2 = 1
    }
  }
}

Var 4108, name BLINK4, Link SUBRUTINE
{
  IF &BLINK4 = 0
  {
    IF &PARPADEO_D2 = 0   // No parpadea y queda apagado
    {
       &DECIMAL_D2 = 0
    }
    IF &PARPADEO_D2 = 1  // Parpadea
    {
       &DECIMAL_D2 = 1
       &BLINK4 = DELAY 1, 50
    }
    IF &PARPADEO_D2 = 2   // No parpadea y queda encendido
    {
       &DECIMAL_D2 = 1
    }
  }
  ELSE
  {
    IF &PARPADEO_D2 = 0
    {
       &DECIMAL_D2 = 0
    }
    IF &PARPADEO_D2 = 1
    {
       &DECIMAL_D2 = 0
    }
    IF &PARPADEO_D2 = 2
    {
       &DECIMAL_D2 = 1
    }
  }
}

// //////////////////////////////////
// END CHRONO F/O
// //////////////////////////////////





// /////////////////////////////////////////////////////////
// FRONTAL INPUTS AND OUTPUTS
// /////////////////////////////////////////////////////////

// N1 SET, FLAPS & AUTOBRAKES
// FLAPS OUTPUTS
Var 2020, name MIproblèmeRAKEDIS_O, Link IOCARD_OUT, DEVICE 17, Output 21 // AUTO BRAKE DISARM INDICATOR
Var 2022, name MIPANTI_SKID_O, Link IOCARD_OUT, DEVICE 17, Output 22 // ANTI SKID INOP INDICATOR
Var 2024, name MIPFLAPTRANS_O, Link IOCARD_OUT, DEVICE 17, Output 23 // LE FLAPS TRANSIT INDICATOR
Var 2026, name MIPFLAPSEXT_O, Link IOCARD_OUT, DEVICE 17, Output 24 // LE FLAPS EXTENDED INDICATOR

// INPUTS
// N1 SET
Var 2028, name N1SET2_I, Link IOCARD_SW, DEVICE 17, Input 36 // N1 SET ROTARY SWITCH POSITION 2
Var 2030, name N1SET1_I, Link IOCARD_SW, DEVICE 17, Input 37 // N1 SET ROTARY SWITCH POSITION 1
Var 2032, name N1SETAUTO_I, Link IOCARD_SW, DEVICE 17, Input 38 // N1 SET ROTARY SWITCH POSITION AUTO
Var 2034, name N1SETBOTH_I, Link IOCARD_SW, DEVICE 17, Input 39 // N1 SET ROTARY SWITCH POSITION BOTH
Var 2036, name N1SETENC_I, Link IOCARD_SW, DEVICE 17, Input 40 // N1 SET ENCODER INPUT

// FUEL FLOW
Var 2038, name FUEL_USED_I, Link IOCARD_SW, DEVICE 17, Input 42 // FUEL FLOW SWITCH USED
Var 2040, name FUEL_RESET_I, Link IOCARD_SW, DEVICE 17, Input 43 // FUEL FLOW SWITCH RESET

// SPD REF
Var 2042, name SPD_AUTO_I, Link IOCARD_SW, DEVICE 17, Input 45 // SPD REF ROTARY SWITCH POSITION AUTO
Var 2044, name SPD_V1_I, Link IOCARD_SW, DEVICE 17, Input 46 // SPD REF ROTARY SWITCH POSITION V1
Var 2046, name SPD_VR_I, Link IOCARD_SW, DEVICE 17, Input 47 // SPD REF ROTARY SWITCH POSITION VR
Var 2048, name SPD_WT_I, Link IOCARD_SW, DEVICE 17, Input 48 // SPD REF ROTARY SWITCH POSITION WT
Var 2050, name SPD_VREF_I, Link IOCARD_SW, DEVICE 17, Input 49 // SPD REF ROTARY SWITCH POSITION VREF
Var 2052, name SPD_A_I, Link IOCARD_SW, DEVICE 17, Input 50 // SPD REF ROTARY SWITCH POSITION TRIANGLE
Var 2054, name SPD_SET_I, Link IOCARD_SW, DEVICE 17, Input 51 // SPD REF ROTARY SWITCH POSITION SET
Var 2056, name SPD_ENC_I, Link IOCARD_SW, DEVICE 17, Input 52 // SPD REF ENCODER INPUT

// AUTO BRAKE
Var 2058, name BRAKE_RTO_I, Link IOCARD_SW, DEVICE 17, Input 54 // AUTO BRAKE ROTARY SWITCH POSITION RTO
Var 2060, name BRAKE_OFF_I, Link IOCARD_SW, DEVICE 17, Input 55 // AUTO BRAKE ROTARY SWITCH POSITION OFF
Var 2062, name BRAKE_1_I, Link IOCARD_SW, DEVICE 17, Input 56 // AUTO BRAKE ROTARY SWITCH POSITION 1
Var 2064, name BRAKE_2_I, Link IOCARD_SW, DEVICE 17, Input 57 // AUTO BRAKE ROTARY SWITCH POSITION 2
Var 2066, name BRAKE_3_I, Link IOCARD_SW, DEVICE 17, Input 58 // AUTO BRAKE ROTARY SWITCH POSITION 3
Var 2068, name BRAKE_MAX_I, Link IOCARD_SW, DEVICE 17, Input 59 // AUTO BRAKE ROTARY SWITCH POSITION MAX

// MFD
Var 2070, name MFD_ENG_I, Link IOCARD_SW, DEVICE 17, Input 60 // MFD ENG MOMENTARY SWITCH BUTTON
Var 2072, name MFD_SYS_I, Link IOCARD_SW, DEVICE 17, Input 61 // MFD SYS MOMENTARY SWITCH BUTTON

// SERVOS
Var 2074, name SERVO_YAW, Link USB_SERVOS, Device 18, Output 1, PosL 185, PosC 400, PosR 675, Type 1 // YAW DAMPER GAUGE.
Var 2075, name SERVO_FLAPL, Link USB_SERVOS, Device 18, Output 2, PosL 200, PosC 630, PosR 1023, Type 1 // LEFT NEEDLE FLAPS GAUGE SERVO.
Var 2076, name SERVO_FLAPR, Link USB_SERVOS, Device 18, Output 3, PosL 170, PosC 600, PosR 1023, Type 1 // RIGHT NEEDLE FLAPS GAUGE SERVO.
Var 2077, name SERVO_BRAKE, Link USB_SERVOS, Device 18, Output 4, PosL 200, PosC 600, PosR 972, Type 1 // BRAKE PRESS GAUGE SERVO.


// NOSE WHEEL
Var 2078, name NOSEWHEEL_I, Link IOCARD_SW, DEVICE 17, Input 66 // NOSE WHEEL SWITCH

// DU LEFT
Var 2080, name DUL_OUTBD_I, Link IOCARD_SW, DEVICE 17, Input 0 // DU LEFT ROTARY SWITCH POSITION "MAIN OUTBD PFD"
Var 2082, name DUL_MAINNORM_I, Link IOCARD_SW, DEVICE 17, Input 1 // DU LEFT ROTARY SWITCH POSITION "MAIN NORM"
Var 2084, name DUL_MAINENG_I, Link IOCARD_SW, DEVICE 17, Input 2 // DU LEFT ROTARY SWITCH POSITION "MAIN ENG PRI"
Var 2086, name DUL_MAINPFD_I, Link IOCARD_SW, DEVICE 17, Input 3 // DU LEFT ROTARY SWITCH POSITION "MAIN PFD"
Var 2088, name DUL_MAINMFD_I, Link IOCARD_SW, DEVICE 17, Input 4 // DU LEFT ROTARY SWITCH POSITION "MAIN MFD"
Var 2090, name DUL_LOWENG_I, Link IOCARD_SW, DEVICE 17, Input 5 // DU LEFT ROTARY SWITCH POSITION "LOWER ENG PRI"
Var 2092, name DUL_LOWNORM_I, Link IOCARD_SW, DEVICE 17, Input 6 // DU LEFT ROTARY SWITCH POSITION "LOWER NORM"
Var 2094, name DUL_LOWND_I, Link IOCARD_SW, DEVICE 17, Input 7 // DU LEFT ROTARY SWITCH POSITION "LOWER ND"

// DU RIGHT
Var 2096, name DUR_LOWND_I, Link IOCARD_SW, DEVICE 17, Input 9 // DU RIGHT ROTARY SWITCH POSITION "LOWER ND"
Var 2098, name DUR_LOWNORM_I, Link IOCARD_SW, DEVICE 17, Input 10 // DU RIGHT ROTARY SWITCH POSITION "LOWER NORM"
Var 2100, name DUR_LOWENG_I, Link IOCARD_SW, DEVICE 17, Input 11 // DU RIGHT ROTARY SWITCH POSITION "LOWER ENG PRI"
Var 2102, name DUR_MAINMFD_I, Link IOCARD_SW, DEVICE 17, Input 12 // DU RIGHT ROTARY SWITCH POSITION "MAIN MFD"
Var 2104, name DUR_MAINPFD_I, Link IOCARD_SW, DEVICE 17, Input 13 // DU RIGHT ROTARY SWITCH POSITION "MAIN PFD"
Var 2106, name DUR_MAINENG_I, Link IOCARD_SW, DEVICE 17, Input 14 // DU RIGHT ROTARY SWITCH POSITION "MAIN ENG PRI"
Var 2108, name DUR_MAINNORM_I, Link IOCARD_SW, DEVICE 17, Input 15 // DU RIGHT ROTARY SWITCH POSITION "NORM"
Var 2110, name DUR_OUTBD_I, Link IOCARD_SW, DEVICE 17, Input 16 // DU RIGHT ROTARY SWITCH POSITION "OUTBD PFD"

// AFDS LEFT INPUTS
Var 2112, name AFDSAP_L_I, Link IOCARD_SW, DEVICE 17, Input 18 // AFDS LEFT SWITCH "AP/P/RST"
Var 2114, name AFDSAT_L_I, Link IOCARD_SW, DEVICE 17, Input 19 // AFDS LEFT SWITCH "AT/P/RST"
Var 2116, name AFDSFMC_L_I, Link IOCARD_SW, DEVICE 17, Input 20 // AFDS LEFT SWITCH "FMC/P/RST"
Var 2120, name AFDST1_L_I, Link IOCARD_SW, DEVICE 17, Input 21 // AFDS LEFT SWITCH "TEST 1"
Var 2122, name AFDST2_L_I, Link IOCARD_SW, DEVICE 17, Input 22 // AFDS LEFT SWITCH "TEST 2"

// AFDS RIGHT INPUTS
Var 2124, name AFDSAP_R_I, Link IOCARD_SW, DEVICE 17, Input 27 // AFDS RIGHT SWITCH "AP/P/RST"
Var 2126, name AFDSAT_R_I, Link IOCARD_SW, DEVICE 17, Input 28 // AFDS RIGHT SWITCH "AT/P/RST"
Var 2128, name AFDSFMC_R_I, Link IOCARD_SW, DEVICE 17, Input 29 // AFDS RIGHT SWITCH "FMC/P/RST"
Var 2130, name AFDST1_R_I, Link IOCARD_SW, DEVICE 17, Input 30 // AFDS RIGHT SWITCH "TEST 1"
Var 2132, name AFDST2_R_I, Link IOCARD_SW, DEVICE 17, Input 31 // AFDS RIGHT SWITCH "TEST 2"

// FIRE WARNINGS INPUTS
Var 2134, name FIREW_L_I, Link IOCARD_SW, DEVICE 17, Input 63 // LEFT FIRE WARNING MOMENTARY SWITCH
Var 2136, name FIREW_R_I, Link IOCARD_SW, DEVICE 17, Input 23 // RIGHT FIRE WARNING MOMENTARY SWITCH

// MASTER CAUTIONS INPUTS
Var 2138, name MASTERC_L_I, Link IOCARD_SW, DEVICE 17, Input 64 // LEFT MASTER CAUTION MOMENTARY SWITCH
Var 2140, name MASTERC_R_I, Link IOCARD_SW, DEVICE 17, Input 17 // RIGHT MASTER CAUTION MOMENTARY SWITCH

// SIXPACKS INPUTS
Var 2142, name SIXPACK_L_I, Link IOCARD_SW, DEVICE 17, Input 65 // LEFT SIXPACK MOMENTARY SWITCH
Var 2144, name SIXPACK_R_I, Link IOCARD_SW, DEVICE 17, Input 8 // RIGHT SIXPACK MOMENTARY SWITCH

// LIGHTS TEST
Var 2146, name MIPDIMTEST_I, Link IOCARD_SW, DEVICE 17, Input 67 // MIP LIGHTS TEST MOMENTARY SWITCH POSITION "DIM"
Var 2148, name MIPTESTTEST_I, Link IOCARD_SW, DEVICE 17, Input 68 // MIP LIGHTS TEST MOMENTARY SWITCH POSITION "TEST"

// LANDING GEAR INPUTS
Var 2150, name GEARL_UP_I, Link IOCARD_SW, DEVICE 17, Input 69 // LANDING GEAR SWITCH "UP" POSITION
Var 2152, name GEARL_DW_I, Link IOCARD_SW, DEVICE 17, Input 70 // LANDING GEAR SWITCH "DW" POSITION

// MISCELANIOUS INPUTS
Var 2154, name SIXPACKFO_I, Link IOCARD_SW, DEVICE 17, Input 8 // F/O SIXPACK SWITCH
Var 2156, name MASTERCAUTFO_I, Link IOCARD_SW, DEVICE 17, Input 17 // F/O MASTER CAUTION SWITCH
Var 2158, name FIREWARNFO_I, Link IOCARD_SW, DEVICE 17, Input 23 // F/O FIRE WARNING SWITCH
Var 2166, name GRDPROXSYST_I, Link IOCARD_SW, DEVICE 17, Input 32 // GROUND PROXIMITY SYS TEST SWITCH
Var 2168, name GRDPROXFLAP_I, Link IOCARD_SW, DEVICE 17, Input 33 // GROUND PROXIMITY FLAP INHIBIT SWITCH
Var 2170, name GRDPROXGEAR_I, Link IOCARD_SW, DEVICE 17, Input 34 // GROUND PROXIMITY GEAR INHIBIT SWITCH
Var 2172, name GRDPROXTERR_I, Link IOCARD_SW, DEVICE 17, Input 35 // GROUND PROXIMITY TERR INHIBIT SWITCH

// FREE INPUTS
Var 2160, name FREE_1_I, Link IOCARD_SW, DEVICE 17, Input 24 // FREE INPUT
Var 2162, name FREE_2_I, Link IOCARD_SW, DEVICE 17, Input 25 // FREE INPUT
Var 2164, name FREE_3_I, Link IOCARD_SW, DEVICE 17, Input 26 // FREE INPUT
Var 2174, name FREE_4_I, Link IOCARD_SW, DEVICE 17, Input 44 // FREE INPUT
Var 2176, name FREE_5_I, Link IOCARD_SW, DEVICE 17, Input 62 // FREE INPUT
Var 2178, name FREE_6_I, Link IOCARD_SW, DEVICE 17, Input 71 // FREE INPUT

// AFDS LEFT OUTPUTS
Var 2180, name AFDSAPG_L_O, Link IOCARD_OUT, DEVICE 17, Output 11 // AFDS LEFT GREEN AP/P/RST LED
Var 2182, name AFDSAPR_L_O, Link IOCARD_OUT, DEVICE 17, Output  12 // AFDS LEFT "RED AP/P/RST LED"
Var 2184, name AFDSATG_L_O, Link IOCARD_OUT, DEVICE 17, Output 13 // AFDS LEFT "GREEN AT/P/RST LED"
Var 2186, name AFDSATR_L_O, Link IOCARD_OUT, DEVICE 17, Output 14 // AFDS LEFT "RED AT/P/RST LED"
Var 2188, name AFDSFMCG_L_O, Link IOCARD_OUT, DEVICE 17, Output 15 // AFDS LEFT "GREEN FMC/P/RST LED"

// AFDS RIGHT OUTPUTS
Var 2190, name AFDSAPG_R_O, Link IOCARD_OUT, DEVICE 17, Output 16 // AFDS RIGHT "GREEN AP/P/RST LED"
Var 2192, name AFDSAPR_R_O, Link IOCARD_OUT, DEVICE 17, Output  17 // AFDS RIGHT "RED AP/P/RST LED"
Var 2194, name AFDSATG_R_O, Link IOCARD_OUT, DEVICE 17, Output 18 // AFDS RIGHT "GREEN AT/P/RST LED"
Var 2196, name AFDSATR_R_O, Link IOCARD_OUT, DEVICE 17, Output 19 // AFDS RIGHT "RED AT/P/RST LED"
Var 2198, name AFDSFMCG_R_O, Link IOCARD_OUT, DEVICE 17, Output 20 // AFDS RIGHT "GREEN FMC/P/RST LED"

// FIRE WARNINGS OUTPUTS
Var 2200, name FIREW_L_O, Link IOCARD_OUT, DEVICE 17, Output 25 // LEFT FIRE WARNING INDICATOR
Var 2202, name FIREW_R_O, Link IOCARD_OUT, DEVICE 17, Output 50 // RIGHT FIRE WARNING INDICATOR

// MASTER CAUTIONS OUTPUTS
Var 2204, name MASTERC_L_O, Link IOCARD_OUT, DEVICE 17, Output 26 // LEFT MASTER CAUTION INDICATOR
Var 2206, name MASTERC_R_O, Link IOCARD_OUT, DEVICE 17, Output 49 // RIGHT MASTER CAUTION INDICATOR

// SIXPACKS OUTPUTS
// LEFT
Var 2208, name SIXPFLT_L_O, Link IOCARD_OUT, DEVICE 17, Output 27 // LEFT SIXPACK FLT CONT INDICATOR
Var 2210, name SIXPELE_L_O, Link IOCARD_OUT, DEVICE 17, Output 28 // LEFT SIXPACK ELEC INDICATOR
Var 2212, name SIXPIRS_L_O, Link IOCARD_OUT, DEVICE 17, Output 29 // LEFT SIXPACK IRS INDICATOR
Var 2214, name SIXPAPU_L_O, Link IOCARD_OUT, DEVICE 17, Output 30 // LEFT SIXPACK APU INDICATOR
Var 2216, name SIXPFUEL_L_O, Link IOCARD_OUT, DEVICE 17, Output 31 // LEFT SIXPACK FUEL INDICATOR
Var 2218, name SIXPOVHT_L_O, Link IOCARD_OUT, DEVICE 17, Output 32 // LEFT SIXPACK OVHT/DET INDICATOR
// RIGHT
Var 2220, name SIXPICE_R_O, Link IOCARD_OUT, DEVICE 17, Output 43 // RIGHT LEFT SIXPACK ANTI-ICE INDICATOR
Var 2222, name SIXPENG_R_O, Link IOCARD_OUT, DEVICE 17, Output 44 // RIGHT SIXPACK ENG INDICATOR
Var 2224, name SIXPHYD_R_O, Link IOCARD_OUT, DEVICE 17, Output 45 // RIGHT SIXPACK HYD INDICATOR
Var 2226, name SIXPOVE_R_O, Link IOCARD_OUT, DEVICE 17, Output 46 // RIGHT SIXPACK OVERHEAD INDICATOR
Var 2228, name SIXPDOO_R_O, Link IOCARD_OUT, DEVICE 17, Output 47 // RIGHT SIXPACK DOORS INDICATOR
Var 2230, name SIXPAIR_R_O, Link IOCARD_OUT, DEVICE 17, Output 48 // RIGHT SIXPACK AIR  COND INDICATOR

// MISCELLANIOUS OUTPUTS-INDICATORS
Var 2232, name BELOW_L_O, Link IOCARD_OUT, DEVICE 17, Output 33 // LEFT BELOW G/S P-INHIBIT INDICATOR
Var 2234, name SPDBKARM_O, Link IOCARD_OUT, DEVICE 17, Output 34 // SPEED BRAKE ARMED INDICATOR
Var 2236, name SPDBKNARM_O, Link IOCARD_OUT, DEVICE 17, Output 35 // SPEED BRAKE DO NOT ARM INDICATOR
Var 2238, name STABOUT_O, Link IOCARD_OUT, DEVICE 17, Output 36 // STAB OUT OF TRIM KORRY INDICATOR
Var 2240, name NOSEG_UP_O, Link IOCARD_OUT, DEVICE 17, Output 37 // NOSE GEAR UP INDICATOR
Var 2242, name NOSEG_DW_O, Link IOCARD_OUT, DEVICE 17, Output 38 // NOSE GEAR DW INDICATOR
Var 2244, name LEFTG_UP_O, Link IOCARD_OUT, DEVICE 17, Output 39 // LEFT GEAR UP INDICATOR
Var 2246, name RIGHTG_UP_O, Link IOCARD_OUT, DEVICE 17, Output 40 // RIGHT GEAR UP INDICATOR
Var 2248, name LEFTG_DW_O, Link IOCARD_OUT, DEVICE 17, Output 41 // LEFT GEAR DW INDICATOR
Var 2250, name RIGHTG_DW_O, Link IOCARD_OUT, DEVICE 17, Output 42 // RIGHT GEAR DW INDICATOR
Var 2252, name SPDBKEXT_O, Link IOCARD_OUT, DEVICE 17, Output 51 // SPEED BRAKE EXTENDED
Var 2254, name BELOW_R_O, Link IOCARD_OUT, DEVICE 17, Output 52 // RIGHT-F/O BELOW G/S P-INHIBIT INDICATOR
Var 2256, name GPWSINOP_O, Link IOCARD_OUT, DEVICE 17, Output 53 // GPWS INOP INDICATOR

// FREE OUTPUTS
Var 2258, name FREE_1_O, Link IOCARD_OUT, DEVICE 17, Output 54 // FREE OUTPUT
Var 2260, name FREE_2_O, Link IOCARD_OUT, DEVICE 17, Output 55 // FREE OUTPUT
 
ok je vois le soucis !

attention au nombre de carte declarée par exemple si tu declare une expension en device 13 et que tu met card 3 alors quel en a que deux ca fait planter sioc ...

je vois sur la photo la carte servo avec card 2 ??? c'est impossible
pareil pour le mip en device 17 ya au moins deux carte master donc attention aux declarations
 
Daprès la documentation il n'y a qu'une seule carte USB servo V3 alors pourquoi SIOC détecte une IOCARD-USB SERVOS supplémentaire?

pareil pour le mip en device 17 ya au moins deux carte master donc attention aux declarations

Aussi tu le remarques il n'y a qu'une seule MASTER
 
Oui le script est bon la dessus pas de soucis mais dans les attribution idx ça va pas faut être sur que ya pas de card déclaré en trop
Je crois que ta raison yen a qu'une pour le mip j'avais cru voir 2
 
Mais du coup pourquoi SIOC détecte une USB servo V3 et une IOCARD-USB SERVOS?
 
Julien quand tu rentreras de vacances, faudra déconnecté la carte USB Servo du port usb pour voir si tu as toujours des plantages de SIOC ;)
 
Salut à  tous,

Merci Windy et Mameloose!!! Je vois que pendant que je me rendais sur mon lieu de vacances, vous avez travaillé pour moi!!!... C'est vraiment sympathique. Japprécie. C'est vrai que je commence à  avoir hâte de pouvoir faire mon premier tour de piste...
Bon ok. Si je comprends bien ça na pas l'air d'être une cat'astrophe... Je vais essayer en débranchant la servo en rentrant et voir! Mais je ne ferais ça qu'à  partir du 25...

Encore merci et bons vols à  tous.

Julien
 
Pas de souci tu pourras aussi poster ton SIOC.ini
Allez passe de bonnes vacances :)
 
Bonjour!!!

Me revoilà ... De retour et prêt à  faire mon premier tour de piste... enfin presque...

Bon, mon premier boulot a été de déconnecter la carte servo!! Ca na rien changé... En fait j'ai l'impression qu'il n'y a pas grand chose qui fonctionne. Sioc Monitor reste désespérément sans résultat. Les cartes apparaissent mais pas moyen dallumer quoi que ce soit...
J'ai copier le Sioc.Ini mais je ne sais pas comment le joindre... (roooo le boulet)

Bon j'espère qu'on va y arriver!!!

Merci et à  très vite.

Julien
 
Code:
Utilise la balise CODE au dessus des avatars, 
tu postes ton ini dedans
 
C'est comme si c'étais fait...!!!

Merciiiiii


Code:
[== Indéfini ==]
[ fichero de configuracion para el SIOC ver. 5.0 ]
[ Configuration file for SIOC ]


[************** SIOC ***************]

[ Nombre asignado al SIOC ]
[ SIOC name ]
Name=MAIN_SIOC

[ Puerto del servidor IOCP ]
[ IOCP port ]
IOCP_port=8092

[ Tiempo de respuesta m·ximo de los paquetes IOCP ]
[ IOCP Timeout ]
IOCP_timeout=3500

[ Arranque minimizado en la barra ]
[ Start minimized in tray ] 
Minimized=No

[ Retraso necesario para las variables toggles (Project Magenta)]
[ Deley needed for var. toggles (Project Magenta) ]
Toggle_delay=20

[ Fichero de configuracion ]
[ Configuration File ]
Config_File=C:\Users\Julien\Desktop\MIP files for ProSim\JUJUcockpit.ssi

[************** VIRTUAL DEVICES ***************]

[ Habilita recepcion de Dispositivos Virtuales yes/no ]
[ Enable Receive Virtual Devices yes/no ]
Vdevices_enable=No

[ Tiempo de espera para carga inicial de Dispositivos Virtuales (ms)]
[ Wait time for load Virtual Devices (ms)]
Vdevices_wait=2000

[ Modo Esclavo para SIOC como servidor de dispositivos yes/no ]
[ Slave mode for SIOC Virtual Devices Server yes/no ]
Vdevices_slave=No


[ Host y Puerto del SIOC donde reenviar los Dispositivos ]
[ SIOC Host/Port to resent Devices ]
Vdevices_host=192.168.1.5
Vdevices_port=8092


[************** MONITOR MODULE ***************]

[ Desabilitar monitorizacion remota del SIOC ]
[ Remote monitor disable mode yes/no ]
Monitor_disable=No

[ Refresco broadcast monitor (en segundos) ]
[ Broadcast monitor time (seconds) ]
Monitor_time=2


[************** IOCARDS MODULE ***************]

[ Desactivar el mà›dulo de las IOCards ]
[ Disable IOCards module ]
IOCard_disable=No

[ Divisor de frecuencia para los ejes analogicos (1-999). Retarda la entrega de valores. ]
[ Frequency divisor for delay the analogic axes. (1-999)]
Divisor_AD=10

[------------- CARDS CONFIG -------------]

[ IOCard Master ]
[...............]

[ Spanish : ]

[ MASTER=(Indice device),(Tipo),(N˙mero de tarjet'as),(N˙mero device) ]

[ Indice Device: à•ndice usado en la variable SIOC como device, para indicar a que tarjeta se hace referencia ]
[ Se usa 0 en el caso de que sà›lo haya una tarjeta y no se tenga en cuenta el nË™mero de device, por defecto un script en SIOC cuando no se pone par·metro DEVICE, se hace referencia al àŒndice 0]

[ tipo = 0 : Emulador de Master Card // OBSOLETO ]
[ tipo = 1 : Tarjeta Master conectada al puerto paralelo directamente // OBSOLETO ]
[ tipo = 2 : Tarjeta Master conectada al puerto paralelo mediante cable de compatibilidad // OBSOLETO ]
[ tipo = 3 : Placa de expansià›n por puerto paralelo // OBSOLETO ]
[ tipo = 4 : Tarjeta USBExpansion usada ]
[ tipo = 5 : Modulo MCP de Opencockpits ]
[ tipo = 6 : Tarjeta USBOutputs ]
[ tipo = 7 : Modulo EFIS de Opencockpits ]
[ tipo = 8 : Modulo Radio COM de Opencockpits ]
[ tipo = 9 : Modulo Radio NAV de Opencockpits ]
[ tipo = 10 : Modulo Radio ADF de Opencockpits ]
[ tipo = 11 : Modulo Radio ATC de Opencockpits ]
[ tipo = 12 : Modulo Radio Airbus RMP de Opencockpits ]
[ tipo = 13 : Modulo FMC-737 de Opencockpits ]
[ tipo = 14 : Tarjeta USBDcmotorPLUS ]
[ tipo = 15 : Modulo MCP V3 de Opencockpits ]
[ tipo = 16 : Modulo CRONOMETRO B737 ]
[ tipo = 17 : Tarjeta USBDimcontrol ]
[ tipo = 18 : Modulo Audio B737 ]
[ tipo = 19 : Modulo FIRE ENGINES B737 ]
[ tipo = 20 : Modulo PEDESTAL B737 ]


[ NË™mero de tarjet'as = NË™mero de placas Master usadas, 1 a 4 para uso de placas de expansià›n, 1 para conexià›n de placa Master directa o del Emulador ]

[ NË™mero de device = 0 en el caso del Emulador o primera tarjeta USB detectada, Direccià›n del puerto paralelo (por ejemplo $037, o nË™mero de dispositivo USB ]


[ Un ejemplo de 2 USBExpansion conectadas con 3 y 2 placas Master ]
[ MASTER=0,4,3,22 ]
[ MASTER=1,4,2,24 ]

[ Un ejemplo de conexià›n a simulador ]
[ MASTER=0,0,1,0 ]


[ English : ]

[ MASTER=(Device index),(Type),(Number of cards),(Device number) ]

[ Device index : Index used in SIOC variable like device, this is the card used for SIOC sentence ]
[ Use 0 for only one card, for this value you not need specify Device number. If you not use DEVICE parameter in a definition in SIOC script, the default index used is 0]

[ type = 0 : Master Card Emulator // OBSOLETE ]
[ type = 1 : Master Card connected directly to parallel port // OBSOLETE ]
[ type = 2 : Master Card connected throught compatibilit'y cable to parallel port //OBSOLETE]
[ type = 3 : Expansion Card connected throught parallel port //OBSOLETE ]
[ type = 4 : USBExpansion Card used ]
[ type = 5 : Opencockpits MCP module ]
[ type = 6 : USBOutputs Card used ]
[ type = 7 : EFIS module ]
[ type = 8 : Radio COM module ]
[ type = 9 : Radio NAV module ]
[ type = 10 : Radio ADF module ]
[ type = 11 : Radio ATC module ]
[ type = 12 : Radio RMP Airbus module ]
[ type = 13 : FMC-737 module ]
[ type = 14 : USBDCmotorPLUS Card used ]
[ type = 15 : MCP V3 module ]
[ type = 16 : CHRONO B737 module ]
[ tipo = 17 : USBDimcontrol card used ]
[ tipo = 18 : Audio B737 module ]
[ tipo = 19 : FIRE ENGINES B737 module ]
[ tipo = 20 : PEDESTAL B737 module ]

[ Number of Cards = Master cards connecteds, 1 to 4 for expansion cards, 1 for a Master card directly connected or Emulator ]

[ Number of device = 0 for Emulator or first USB card detected, parallel port address, device number for specifies USBexpansion card ]

[ For example, two USBExpansion cards connected with 3 and 2 Master cards used ]
[ MASTER=0,4,3,22 ]
[ MASTER=1,4,2,24 ]

[ For example, use of Master card emulator ]
[ MASTER=0,0,1,0 ]

[ Use the first USBExpansion card connected with only one Master Card attached ]
[ Esta definicià›n es para usar la primera tarjeta USBExpansion que se encuentre instalada que adem·s llevar· conectada una placa Master ]

[MASTER=3,6,1,252]
[MASTER=0,4,1,0]
[MASTER=0,12,1,0]
[MASTER=20,20,2,1055]

[ Others Cards / Otras tarjet'as ]
[...............................]

[ Spanish : ]

[ Nombre_de_tarjeta=(Indice device),(N˙mero device) ]

[ Indice Device: à•ndice usado en la variable SIOC como device, para indicar a que tarjeta se hace referencia ]
[ Se usa 0 en el caso de que sà›lo haya una tarjeta y no se tenga en cuenta el nË™mero de device, por defecto un script en SIOC cuando no se pone par·metro DEVICE, se hace referencia al àŒndice 0]

[ NË™mero de device = 0 para usar primera tarjeta USB de este tipo detectada à› nË™mero de dispositivo USB ]


[ English : ]

[ Name_of_card=(Device index),(Device number) ]

[ Device index : Index used in SIOC variable like device, this is the card used for SIOC sentence ]
[ Use 0 for only one card, for this value you not need specify Device number. If you not use DEVICE parameter in a definition in SIOC script, the default index used is 0]

[ Number of device = 0 for first USB card of this type detected, or device number for a specifies device ]

[ Ejemplo de dos USBServos en indices 0 y 1, y n˙meros de devices 17 y 23 ]
[ Example of two USBServos for index 0 and 1, and device number 17 and 23 ]

[ USBServos=0,17 ]
[ USBServos=1,23 ]


[USBStepper=0,0]
[USBKeys=0,0]
[USBServos=0,0]
[USBRelays=0,0]
[USBDCmotor=0,0]

[ Para los ejes analà›gicos se usan los nË™meros de devices de las tarjet'as donde est·n alojados ]
[ For analogic axles, you use the device number of cards what allow the axles ]

[USBAnalogic=0,0]


[************** FSUIPC MODULE ***************]

[ Desabilitar lectura de las FSUIPC ]
[ FSUIPC disable mode yes/no ]
FSUipcdisable=No

[ Refresco recepcià›n FSUIPC ]
[ FSUIPC refresh ]
FSUipcRefresh=50


[************** IOCP CLIENTS MODULES ***************]

[ Retraso para inicializacion una vez conectado el cliente en milisegundos ]
[ Delay for initialization when client has been connected in mseconds ]
IOCPini_delay=0

[************** IOCP CLIENT MODULE #0 ***************]

[ Desactivar el mà›dulo cliente IOCP ]
[ Disable IOCP client module ] 
IOCPclient0_disable=Yes

[ IP del servidor donde debe de conectar el cliente ]
[ IOCP client host name ]
IOCPclient0_host=LOCALHOST

[ Puerto de envio del protocolo IOCP cliente ]
[ IOCP client port ]
IOCPclient0_port=8099


[************** IOCP CLIENT MODULE #1 ***************]

[ Desactivar el mà›dulo cliente IOCP ]
[ Disable IOCP client module ] 
IOCPclient1_disable=Yes

[ IP del servidor donde debe de conectar el cliente ]
[ IOCP client host name ]
IOCPclient1_host=LOCALHOST

[ Puerto de envio del protocolo IOCP cliente ]
[ IOCP client port ]
IOCPclient1_port=8099


[************** SOUND MODULE ***************]

[ Ficheros de sonido ]
[ Sound Files ]

[ Desactivar el mà›dulo de sonido ]
[ Disable Sound module ]
Sound_disable=Yes

[ Volum'en general de los sonidos 0-100 ]
[ Master Volume 0-100 ]
Volume=100


[ put * first filename for loop Sound ]
[ anteponer * en el fichero para bucle continuo de sonido]

[ Sound=wav_file,frequency,volume,pan ]
[ frequency=100 to 100000 0=original -1=current ]
[ volume=0 to 100, -1=current ]
[ pan=-100 (left) to +100 (right) 0=center -1=current ]

[ Sound=Fichero_wav,frecuencia,volum'en,balance ]
[ frecuencia=100 hasta 100000 0=original -1=Por defecto ]
[ volum'en=0 hasta 100 -1=Volum'en por defecto ]
[ balance=-100 (Izquierda) hasta +100 (Derecha) 0=centro -1=Por defecto ]

[ #1 ]
Sound=APDis.wav,-1,-1,-1

[ #2 ]
Sound=*outermk.wav,-1,-1,-1

[ #3 ]
Sound=*hello.wav

[************** KEYBOARD EMULATOR MODULE ***************]

[ Nombre exacto de la ventana donde se enviar·n las teclas ]
[ Name of window for key send ]
[window = "Project Magenta Glass Cockpit - Build 396" ]

window =a.txt - Bloc de not'as 


[ Asignacià›n de teclas ]
[ assign youe keys ]

#1=A
#2=B
#3=C
#4=D
#5=E
#6=F
#7=G
#8=H
#9=I
#10=J
#11=K
#12=L
#13=M
#14=N
#15=O
#16=P
#17=Q
#18=R
#19=S
#20=T
#21=U
#22=V
#23=W
#24=X
#25=Y
#26=Z
#27=1
#28=2
#29=3
#30=4
#31=5
#32=6
#33=7
#34=8
#35=9
#36=0
#37=<
#38=,
#39=.
#40=-
#41=*
#42=+
#43=//
#44=/0
#45=/1
#46=/A
#47=<T
#48=
#49=
#50=
#51=
#52=
#53=
#54=
#55=
#56=
#57=
#58=
#59=
#60=
#61=
#62=
#63=
#64=
#65=
#66=
#67=
#68=
#69=
#70=
#71=
#72=
#73=
#74=
#75=
#76=
#77=
#78=
#79=
#80=
#81=
#82=
#83=
#84=
#85=
#86=
#87=
#88=<a
#200=B

[ --- SIOC Autoconfig Devices Ver 5.0 B5 ==> 2014-06-27 21:53:26 <== ----]

[ --- SIOC Autoconfig Devices Ver 5.0 B5 ==> 2014-06-27 21:53:52 <== ----]
[MASTER=13,4,1,13]

[ --- SIOC Autoconfig Devices Ver 5.1 B2 ==> 17/07/2017 22:43:17 <== ----]
[MASTER=0,15,1,122]
[MASTER=16,16,1,134]

[ --- SIOC Autoconfig Devices Ver 5.1 B2 ==> 17/07/2017 22:47:22 <== ----]
[MASTER=14,13,1,132]
[MASTER=13,13,1,130]
[MASTER=0,15,1,122]
[MASTER=16,16,1,134]

[ --- SIOC Autoconfig Devices Ver 5.1 B2 ==> 17/07/2017 22:48:16 <== ----]
[MASTER=2,7,1,136]
[MASTER=14,13,1,132]
[MASTER=13,13,1,130]
[MASTER=0,15,1,122]
[MASTER=16,16,1,134]

[ --- SIOC Autoconfig Devices Ver 5.1 B2 ==> 17/07/2017 22:48:52 <== ----]
[MASTER=17,4,1,140]
[USBServos=18,138]
[MASTER=2,7,1,136]
[MASTER=14,13,1,132]
[MASTER=13,13,1,130]
[MASTER=0,15,1,122]
[MASTER=16,16,1,134]

[ --- SIOC Autoconfig Devices Ver 5.1 B2 ==> 17/07/2017 22:52:00 <== ----]
[MASTER=17,4,1,140]
[USBServos=18,138]
[MASTER=2,7,1,136]
[MASTER=15,15,1,228]
[MASTER=16,16,1,134]
[MASTER=14,13,1,132]
[MASTER=13,13,1,130]
[MASTER=20,20,1,203]
[MASTER=7,7,1,199]
[MASTER=4,4,1,217]

[ --- SIOC Autoconfig Devices Ver 5.1 B2 ==> 02/08/2017 17:00:22 <== ----]
[MASTER=4,4,1,217]
[USBServos=18,158]
[MASTER=0,15,1,228]

[ --- SIOC Autoconfig Devices Ver 5.1 B2 ==> 02/08/2017 17:15:28 <== ----]
[MASTER=4,4,1,217]
[USBServos=18,218]
[MASTER=2,7,1,232]
[MASTER=1,7,1,230]
[MASTER=14,13,1,223]
[MASTER=13,13,1,206]
[MASTER=0,15,1,228]
[MASTER=15,16,1,234]
[MASTER=16,16,1,226]
[MASTER=20,20,2,212]

[ --- SIOC Autoconfig Devices Ver 5.1 B2 ==> 02/08/2017 17:16:12 <== ----]
[MASTER=4,4,1,217]
[USBServos=18,158]
[USBServos=18,218]
[MASTER=2,7,1,232]
[MASTER=1,7,1,230]
[MASTER=14,13,1,223]
[MASTER=13,13,1,206]
[MASTER=0,15,1,228]
[MASTER=15,16,1,234]
[MASTER=16,16,1,226]
[MASTER=20,20,2,212]

[ --- SIOC Autoconfig Devices Ver 5.1 B2 ==> 02/08/2017 18:00:01 <== ----]
[MASTER=4,4,1,217]
[USBServos=18,158]
[USBServos=18,218]
[MASTER=2,7,1,232]
[MASTER=1,7,1,230]
[MASTER=14,13,1,223]
[MASTER=13,13,1,206]
[MASTER=0,15,1,228]
[MASTER=15,16,1,234]
[MASTER=16,16,1,226]
[MASTER=20,20,2,212]

[ --- SIOC Autoconfig Devices Ver 5.1 B2 ==> 02/08/2017 18:19:37 <== ----]
[MASTER=17,4,1,217]
[USBServos=18,158]
[USBServos=18,218]
[MASTER=2,7,1,232]
[MASTER=1,7,1,230]
[MASTER=14,13,1,223]
[MASTER=13,13,1,206]
[MASTER=0,15,1,228]
[MASTER=15,16,1,234]
[MASTER=16,16,1,226]
[MASTER=20,20,2,212]

[ --- SIOC Autoconfig Devices Ver 5.1 B2 ==> 02/08/2017 18:36:30 <== ----]
[MASTER=17,4,1,217]
[USBServos=18,218]
[MASTER=2,7,1,232]
[MASTER=1,7,1,230]
[MASTER=14,13,1,223]
[MASTER=13,13,1,206]
[MASTER=0,15,1,228]
[MASTER=15,16,1,234]
[MASTER=16,16,1,226]
[MASTER=20,20,2,212]

[ --- SIOC Autoconfig Devices Ver 5.1 B2 ==> 02/08/2017 18:53:44 <== ----]
MASTER=17,4,1,217
USBServos=18,218
MASTER=2,7,1,232
MASTER=1,7,1,230
MASTER=14,13,1,223
MASTER=13,13,1,206
MASTER=0,15,1,228
MASTER=15,16,1,234
MASTER=16,16,1,226
MASTER=20,20,2,212
 
Lautoconfig date du 2 aout mais semble correct.
Je vois que tu as connecter le pedestal...Est ce que tu as integrer le script dans ton JUJUcockpit.ssi?

Dis nous exactement ce qui ne marche pas, tu as fais un SIOC monitor?
 
Oui le pedestal est connecté. Pour le script je n'ai rien fait car tu mas dit qu'il fallait le modifier (conflit avec les EFIS si je me souviens bien...)

Quand je vais dans SIOC Monitor et en fait un peu partout, il n'y a aucune régularité... Dans sioc monitor, une fois sur 2 ou 3, j'arrive à  faire s'allumer les afficheurs (all on...). Mais bien sûr cela ne fonctionne pas toujours.
Le MCP naffiche rien et je n'ai pas de communication avec les éléments du MIP (les voyants de train sont toujours éteints et pas plus de communication avec les efis, bcp ou autre brake panel...)

Je n'ai vraiment aucune idée de ce qui ne va pas...

Helppppppp....!!!!!!
 
Debranche le pedestal tant que tu n'as pas le script je vais regarder demain et te le modifier.
Tu as bien demarrer l'alimentation de la expansion en +5v?
 
Silverstar a dit:
Debranche le pedestal tant que tu n'as pas le script je vais regarder demain et te le modifier.
Tu as bien demarrer l'alimentation de la expansion en +5v?
?????? Une expension ne salimente surtout pas !
 
Bon bon ok alors la master (+5v), je n'ai plus de carte opencockpit donc je me rappelle plus trop les spécifiés!!!

Branche uniquement 1 périphérique et teste avec SIOC monitor.

Tu vires tout et tu branches que le MCP, tu fais un Sioc Monitor. Meme si ça marche pas redémarre le PC fais plusieurs essais avec un seul périphérique....

Si ça marche pas tu branches un autre périphérique seul par exemple la carte expansion (MIP) après si t'as rien c'est ton hardware qui a une coqu'ille. (vérifier les branchements et ton PC)

Je me rappelle plus trop mais tu as combien de hub? combien de périphérique? et les hub sont tous branché sur le même PC parceque je me rappelle que tu as un rack avec 3 PC.

Aussi pour compléter si tu pouvais me redire la configuration du PC où sont branchés les Hub, parce je me souviens que ton PC principale ramait à  mort.
 
Allez c'est partiiiiii....
On va procéder par élimination. Je fais ça et je vous tiens au courant.

Sur le PC principal je ne pense pas qu'il y ai de problème... il est plutôt rapide uniquement utilisé pour le sim La config:

Intel i7 4790k 4,4ghz, RAM DDR3 Corsair 32go, Carte mèreAsus Maximus VI Formula C2, 2 cartes graphiques Asus Strix GTX 1080 8go, SSD Samsung EVO 850 500go. Windows 7 pro 64

4 PC esclaves uniquement pour l'affichage des displays (4 HP 8000)

Lensemble sur réseau dom'estique (switch ethernet).

Concernant les HUB, l y en a 2... branchés sur le PC principal. Ils sont alimentés par un adaptateur secteur.

A suivre...
 
Retour
Haut