Page 1 sur 1

Plantage Sioc avec la variable prop lever

MessagePosté: Mer 15 Jan 2014 19:05
de tabar57
Bonjour à tous,

A mon tour de vous soumettre un petit souci, je m'explique .... gratgrat
Je suis en train de mettre en place la mise en drapeau manuelle sur mon B200 avec les variables 088E et 0926, cette mise en drapeau est déclenchée par un micro switch qui passe ces variables à -4096, or dès que je compile le code (la compil se passe bien) je ne peux plus lancer SIOC, il plante et même pire il faut que je change dans le sioc.ini le ssi chargé, au profit d'un autre pour que je puisse le relancer gratgrat gratgrat gratgrat .

Quelqu'un a déjà rencontré ce problème ? merci affiche , en attendant je vais boire l'apéro jaune.

Bernard

Re: Plantage Sioc avec la variable prop lever

MessagePosté: Mer 15 Jan 2014 20:07
de stevelep
Le variable FSUIPC de SIOC ne peuvent pas être négatives sauf si tu précise TYPE 1 dans la définition.
Regarde dans l'aide sous variable signées

BOB

Re: Plantage Sioc avec la variable prop lever

MessagePosté: Sam 18 Jan 2014 17:33
de tabar57
Bonjour,

Merci Bob pour cette réponse rapide.
J'ai essayé hier soir en mettant un type 2 à la fin de la définition de celle ci mais rien n'y fait, même en essayant de forcer la variable à -4096 par IOCP console, il doit y avoir quelque chose qui m'échappe.
Je me demande bien par quel tour de passe passe Claude Kiffer y arrivait car en regardant son code il était peu différent du mien, allez Claude donnes moi ton secret STP , merci affiche

Cordialement

Bernard

Re: Plantage Sioc avec la variable prop lever

MessagePosté: Sam 18 Jan 2014 17:38
de stevelep
C'est TYPE 1, je me suis trompé

BOB

Type By setting 1, we force a binary to signed integer conversion. The value stored in the variable is signed.

Re: Plantage Sioc avec la variable prop lever

MessagePosté: Dim 19 Jan 2014 11:07
de razmott
Bonjour Bernard,
effectivement, je ne comprends pas bien ton problème. Tu as remarqué que dans mon code du B200, il y a trois conditions pour passer manuellement en drapeau:

Var 0307, name L_FEATHERING, Link SUBRUTINE // mise en drapeau manuelle
{
IF &L_FEATHER_SW = 1 // micro-switch manette gauche
{
IF &L_ENG_THROTTLE < 2000 // moteur au ralenti
{
IF &L_ENG_FFLOW <= 7000 // Low Idle
{
&L_PROP = -4096 // mise en drapeau
}
}
}
}

Je ne vois pas en quoi la variable 088E peut être différente, par exemple,de la 088C de la même famille, qui sert à passer en Reverses.
Or, actuellement, je mets cette variable 088C à -4096 sans problème, avec le code suivant (l'avion doit être au sol pour passer les Reverses):

Var 7019, name ACFT_AIRBORNE, Link FSUIPC_INOUT, Offset $0366, Length 2 // En l'air ou au sol

Var 7020, name THR1_POS, Link FSUIPC_INOUT, Offset $088C, Length 2 // Position levier moteur 1
{
IF &THR1_POS < 2000 // valeur pour Idle
{
IF &ACFT_AIRBORNE = 1 // si avion au sol
{
&THR1_POS = -4096 // Reverses 1
}
}
}

Ton erreur de compil vient bien de cette variable 088E en particulier ? A tout hasard, essaies d'entrer le script dans la fenêtre SIOC config et non en texte. Tu remarqueras aussi que je n'ai pas mis Type 1 dans la variable, et tout va bien comme ça. Mystère.
Amitiés.
Claude