Vous n'êtes pas identifié(e).
oui maintenant c'est à toi de travailler
tu a lu mes pensées
Etape 1:
Donc, il faudrait que tu ajoutes un 2e paramètre à cette fonction pour pouvoir donner une autre variable que COM1.
function stby_freq_com1(bcd_freq)
local q400_freq= BCD_to_MJC8Q400(bcd_freq)
MJCD8_Write(q400_freq, 65058,65094) <-------- c'est ça ?
end
Dans un premier temps, ajoute ce 2e paramètre, utilise le à la place de 65058 et modifie tous les appels à la fonction pour passer ce 2e paramètre avec la valeur 65058.
??? désoler un peu plus de détail
Salut Zigou
désoler mais comme tu le sait moi et LUA ca fait 2 le script marche très bien, sauf que avec ces modification :
1 _ en peut changer que la fréquence com1
2 - si en appui sur la touche pour changer l'action sur quelle com en veut changer la fréquence COM1 ou COM2 c'est la même chose , alors que sur les appareil par Default en appuis sur la touche affecter pour la radio com quand veut modifier ex: la touche C est affecter pour le changement de fréquence com1 ou com2 ,je veut change la fréquence sur com2 j'appui sur C le première fois un message "COM1 j'appui une deuxième fois un message "COM2" je rentre la fréquence voulu
si tu a le temp j'aimerais que tu m'explique les changement que tu a effectuer et ne pas me donner les "les solutions" car j'aimerais apprendre
si c'est trop compliquer pour une personne qui ne c'est connait pas en script LUA ou pas le temp alors a tois de voire
merci
pas trop le temps alors j'espère que tu maitrises un peu le LUA
le bout de code dans ton script qui lit la fréquence COM1:
if acr == "COM_1" then
CurrFreq = ipc.readUW(0x311A) --get freq of active radio
freqloc= 0x311Aidéalement, il faudrait la remplacer avec la lecture de la variable COM1 du Majestic (ie MJC_Read)
? =V
un très grand BRAVO tu est un expert =W=W=W=W
Ok merci
toujours problème fréquences
cette fois j'ai rentrée le fréquences 120.000 et 121.025
le log
98265 LUA.0: NewFreq (BCD)= 10240
98265 LUA.0: Q400Freq= 124000
98671 LUA.0: NewFreq (BCD)= 8192
98671 LUA.0: Q400Freq= 103200
100480 LUA.0: NewFreq (BCD)= 8192
100480 LUA.0: Q400Freq= 103200
100730 LUA.0: NewFreq (BCD)= 8192
100745 LUA.0: Q400Freq= 103200
106549 LUA.0: NewFreq (BCD)= 8192
106549 LUA.0: Q400Freq= 103200
107157 LUA.0: NewFreq (BCD)= 8448
107157 LUA.0: Q400Freq= 105800
109325 LUA.0: NewFreq (BCD)= 8448
109325 LUA.0: Q400Freq= 105800
109871 LUA.0: NewFreq (BCD)= 8450
109871 LUA.0: Q400Freq= 105820
113912 Sim stopped: average frame rate for last 74 secs = 19.2 fps
113912 Max AI traffic was 1 aircraft (Deleted 0)
115004 === Closing session: waiting for DLLStop to be called ...
127983 === DLLStop called ...
127983 === Closing external processes we started ...
128982 === About to kill any Lua plug-ins still running ...
129138 === Closing global Lua thread
130136 === About to kill my timers ...
130323 === Restoring window procs ...
130323 === Unloading libraries ...
130323 === stopping other threads ...
130323 === ... Memory checking ...
130323 === ... Button scanning ...
130432 === ... Axis scanning ...
130526 === Releasing joystick devices ...
130526 === Freeing macro memory
130526 === Removing any offset overrides
130526 === Closing all WideFS threads
132882 === Clearing any displays left
132882 === NOTE: not calling SimConnect_Close ...
132882 === AI slots deleted!
132882 === Freeing button memory ...
132882 === Closing my Windows ...
132882 === Freeing FS libraries ...
133880 === Closing devices ...
133880 === Closing the Log ... Bye Bye! ...
133880 System time = 25/02/2021 19:18:58, Simulator time = 16:27:06 (15:27Z)
133880 *** FSUIPC log file being closed
Minimum frame rate was 16.2 fps, Maximum was 19.9 fps
Minimum available memory recorded was 2715Mb
Average frame rate for running time of 79 secs = 19.1 fps
G3D fix: Passes 10109, Null pointers 0, Bad pointers 0, Separate instances 0
Maximum AI traffic for session was 1 aircraft
Memory managed: 42 Allocs, 42 Freed
********* FSUIPC Log file closed ***********
le script modifier
les modification faite en gras
le log
3759 Initialising SimConnect data requests now
3759 FSUIPC Menu entry added
3822 \\ALR-PC\Users\ALR\Documents\Fichiers Flight Simulator X\alpha.FLT
3822 H:\fsx\SimObjects\Airplanes\B737_800\Boeing737-800.AIR
29577 Aircraft loaded: running normally now ...
29577 User Aircraft ID 1 supplied, now being used
29983 System time = 25/02/2021 08:03:24, Simulator time = 08:02:59 (07:02Z)
29983 Aircraft="Boeing 737-800 Paint1"
30997 Starting everything now ...
32323 Advanced Weather Interface Enabled
46862 H:\fsx\SimObjects\Airplanes\mjc8q400\MJC8Q4.AIR
47705 Aircraft="MJC8Q400_DTH1"
47705 Exception 3 "UNRECOGNIZED_ID", Ref 2346, Index param 1 on write SetData for "RECIP ENG FUEL FLOW:1"
47705 Exception 3 "UNRECOGNIZED_ID", Ref 2347, Index param 1 on write SetData for "RECIP ENG FUEL FLOW:2"
47705 Exception 3 "UNRECOGNIZED_ID", Ref 2348, Index param 1 on write SetData for "RECIP ENG FUEL FLOW:3"
86720 LUA.0: NewFreq (BCD)= 10240
86720 LUA.0: Q400Freq= 124000
100137 LUA.0: NewFreq (BCD)= 8192
100137 LUA.0: Q400Freq= 103200
100386 LUA.0: NewFreq (BCD)= 8192
100386 LUA.0: Q400Freq= 103200
143177 LUA.0: NewFreq (BCD)= 10240
143177 LUA.0: Q400Freq= 124000
149090 LUA.0: NewFreq (BCD)= 8448
149090 LUA.0: Q400Freq= 105800
149339 LUA.0: NewFreq (BCD)= 8448
149339 LUA.0: Q400Freq= 105800
170633 Sim stopped: average frame rate for last 122 secs = 19.5 fps
170633 Max AI traffic was 1 aircraft (Deleted 0)
171616 === Closing session: waiting for DLLStop to be called ...
184627 === DLLStop called ...
184627 === Closing external processes we started ...
185625 === About to kill any Lua plug-ins still running ...
185781 === Closing global Lua thread
186780 === About to kill my timers ...
186982 === Restoring window procs ...
186982 === Unloading libraries ...
186982 === stopping other threads ...
186982 === ... Memory checking ...
186982 === ... Button scanning ...
187076 === ... Axis scanning ...
187170 === Releasing joystick devices ...
187170 === Freeing macro memory
187170 === Removing any offset overrides
187170 === Closing all WideFS threads
189541 === Clearing any displays left
189541 === NOTE: not calling SimConnect_Close ...
189541 === AI slots deleted!
189541 === Freeing button memory ...
189541 === Closing my Windows ...
189541 === Freeing FS libraries ...
190539 === Closing devices ...
190539 === Closing the Log ... Bye Bye! ...
190539 System time = 25/02/2021 08:06:04, Simulator time = 08:05:13 (07:05Z)
190539 *** FSUIPC log file being closed
Minimum frame rate was 17.5 fps, Maximum was 19.9 fps
Minimum available memory recorded was 2695Mb
Average frame rate for running time of 132 secs = 19.5 fps
G3D fix: Passes 10094, Null pointers 0, Bad pointers 0, Separate instances 0
Maximum AI traffic for session was 1 aircraft
Memory managed: 66 Allocs, 66 Freed
********* FSUIPC Log file closed ***********
les fréquences taper au clavier
120.000
121.000
ps : quand je tape 120 et 121 la fréquence afficher et 158.464 et quand je tape 120.00 ----> 137.664 si je tape le dernier 0 soit 120.000 ----> 137.664 puis affichage sur bar verte"invalidee entrée"
de même quand je tape 121.00 ----> 140.264 si je tape le dernier 0 soit 121.000 ----> 140.264 puis affichage sur bar verte " invalidee entrée"
voici un extrait du log
113850 H:\fsx\SimObjects\Airplanes\mjc8q400\MJC8Q4.AIR
118904 Exception 3 "UNRECOGNIZED_ID", Ref 2375, Index param 1 on write SetData for "RECIP ENG FUEL FLOW:1"
118904 Exception 3 "UNRECOGNIZED_ID", Ref 2376, Index param 1 on write SetData for "RECIP ENG FUEL FLOW:2"
118904 Exception 3 "UNRECOGNIZED_ID", Ref 2377, Index param 1 on write SetData for "RECIP ENG FUEL FLOW:3"
119248 Aircraft="MJC8Q400_DTH1"
174051 Sim stopped: average frame rate for last 55 secs = 18.7 fps
174051 Max AI traffic was 3 aircraft (Deleted 0)
294764 LUA.0: NewFreq (BCD)= 10240
294764 LUA.0: Q400Freq= 124000
295061 LUA.0: NewFreq (BCD)= 8960
295061 LUA.0: Q400Freq= 111000
296870 LUA.0: NewFreq (BCD)= 8960
296886 LUA.0: Q400Freq= 111000
297136 LUA.0: NewFreq (BCD)= 8960
297136 LUA.0: Q400Freq= 111000
306106 === Closing session: waiting for DLLStop to be called ...
317088 === DLLStop called ...
317088 === Closing external processes we started ...
318086 === About to kill any Lua plug-ins still running ...
318242 === Closing global Lua thread
Je n'ai pas le plaisir de connaitre Linda, elle est jolie ? =
moi non plus
Les scripts NpCkeyData (de ce que j'ai vu rapidement) capturent les touches de ton clavier numérique pour rentrer une fréquence.
Je t'ai donné le code dans mon post précédent. En début de fichier, tu dois définir les deux fonctions dont tu as besoin:
- BCD_to_MJC8Q400
- MJCD8_Writeplus cette troisième qui appelle les deux précédentes:
function stby_freq_com1(NewFreq)
local q400_freq= BCD_to_MJC8Q400(NewFreq)
MJCD8_Write(q400_freq, 65058)
endpuis, dans le script, à chaque fois que tu vois l'instruction:
ipc.writeUW(freqloc, NewFreq) -- update radio paneltu changes comme suit:
ipc.writeUW(freqloc, NewFreq) -- update radio panel
stby_freq_com1(NewFreq)
voila jai ajoutais tes script comme suit
function BCD_to_MJC8Q400(bcd_freq)
digit4= 10000*logic.Shr(bcd_freq, 12)
digit3= logic.And(bcd_freq, 0x0F00)
digit3= 1000*logic.Shr(bcd_freq, 8)
digit2= logic.And(NewFreq, 0x00F0)
digit2= 100*logic.Shr(NewFreq, 4)
digit1= 10*logic.And(NewFreq, 0x000F)
local mjc8q400_freq= digit1+digit2+digit3+digit4
return mjc8q400_freq
end
function MJCD8_Write(value, variable)
ipc.writeLvar("MJC_VAR_WRITE_VALUE", value)
ipc.writeLvar("MJC_VAR_WRITE_CODE", variable)
end
function stby_freq_com1(NewFreq)
local q400_freq= BCD_to_MJC8Q400(NewFreq)
MJCD8_Write(q400_freq, 65058)
end
puis jai changer comme suit:
ipc.writeUW(freqloc, NewFreq) -- update radio panel
stby_freq_com1(NewFreq)
les l'avions par Default c'est bon
mais pour le dash les fréquence change mais des fréquence bizare exemple
si je rentre au clavier 118.000 ----> 118.900 la fréquence change MAIS pas dans le bon "choix" est afficher fréquence bizare 106.864
119.000 ----> 119.900 la fréquence change MAIS pas dans le bon "choix" est afficher fréquence bizare 106.864
Tu ne réponds pas à ma question
Je ne demande pas ou tu as mis ma fonction mais la fonction MJCD8_Write
cette fonction
function stby_freq_com1 ()
MJCD8_Write(35775, 65058).
end
je l’utiliser dans linda je "l'activer" via un raccourci Vjoy,mais comme tu le vois je dois crée une nouvelle pour chaque fréquence
Mais comment la définir ou je je dois la mettre ? =V=V:col
Tu as modifié le script initial pour appeler cette fonction:
MJCD8_Write(q400_freq, 65058)donc ou est cette fonction ?
la fonction je l'ai mis a la fin de ce fichier NpcKeyData.lua
salut zigou
tu veut que je mais la fonction la fonction BCD_to_MJC8Q400 dans le même fichier a la fin de ce même fichier ou avant ou après
ipc.writeUW(freqloc, NewFreq) -- update radio panel
q400_freq= BCD_to_MJC8Q400(NewFreq)
MJCD8_Write(q400_freq, 65058)
j'ai crée un fichier lua MJC8Q400.lua ou j'ai coller ce script
function BCD_to_MJC8Q400(bcd_freq)
digit4= 10000*logic.Shr(bcd_freq, 12)digit3= logic.And(bcd_freq, 0x0F00)
digit3= 1000*logic.Shr(bcd_freq, 8)digit2= logic.And(NewFreq, 0x00F0)
digit2= 100*logic.Shr(NewFreq, 4)digit1= 10*logic.And(NewFreq, 0x000F)
local mjc8q400_freq= digit1+digit2+digit3+digit4
return mjc8q400_freq
end
activer via la touche C
puis jai coller ces deux ligne dans le script NpCkeyData.lua comme ca
NewFreq = logic.Or(DigitSpace, movPARAM+0x0900) --add on temp 3rd freq digit = 9
ipc.writeUW(freqloc, NewFreq) -- update radio panel
q400_freq= BCD_to_MJC8Q400(NewFreq)
MJCD8_Write(q400_freq, 65058)
keypos=keypos+1
j active le 'script' la touche C puis je rentre la fréquence via le pave numérique ex:123.25 la jai un message (No Function Selected)
Hello
pas trop le temps alors j'espère que tu maitrises un peu le LUA
le bout de code dans ton script qui lit la fréquence COM1:
if acr == "COM_1" then
CurrFreq = ipc.readUW(0x311A) --get freq of active radio
freqloc= 0x311Aidéalement, il faudrait la remplacer avec la lecture de la variable COM1 du Majestic (ie MJC_Read)
Et déjà pour t'entrainer, le bout de code qui écrit la valeur COM1 dans la radio de base FSX:
NewFreq = logic.Or(DigitSpace, movPARAM+0x0900) --add on temp 3rd freq digit = 9
ipc.writeUW(freqloc, NewFreq) -- update radio panelIl faut remplacer le ipc.writeUW par l'appel à ta fonction: stby_freq_com1 (NewFreq)
PS: Il faut certainement convertir le format de NewFreq (format FSX) au format Majestic.
PS2: je te fais ca rapide car ton script est complexe et il gère toutes les fréquences COM1, COM2, NAV1, NAV2
mais si tu comprends la modif pour COM1, tu sauras l'adapter pour les autres fréquencesBon dimanche
zigou bonjour
1: je ne maitrise pas du tout les script lua =V
ce que jai fait
if acr == "COM_1" then
CurrFreq = ipc.readUW(0x311A) --get freq of active radio
freqloc= 0x311A
changement
if acr == "COM_1" then
CurrFreq = MJC_Read(65094) --get freq of active radio
freqloc= 65094
ipc.writeUW(freqloc, NewFreq) -- update radio panel
changement
MJCD8_Write(freqloc, NewFreq) -- update radio panel
mais ça ne marche pas
NpCkeyData.lua
NpCsetCom.lua
--NpCsetCom 14Aug2013
-- Modified not to show frequencies on green bar
--Must enter first Com or Nav digit (a 1)
--Al Klayton, 1Oct2013
acr = ipc.get("ACTIVE_RADIO")
ipc.set("KEY_POS", 1)
onoff = ipc.get("ONOFF")
if (not(onoff == nil) and onoff == "OFF") then
return
end
if ipcPARAM == 1 then --setup for toggle code below
acr = "COM_2" --ipcPARAM =0 for toggle, =1 for COM_1 only, =2 for COM_2 only
else
if ipcPARAM == 2 then
acr = "COM_1"
end
end
if not(acr == nil) and acr == "COM_1" then
nacr = "COM_2" --do this code to setup for Com radio toggle
ipc.writeSTR(0x3380, nacr); --display delected radio on green bar
else
nacr = "COM_1" --do this code to setup for Com radio toggle
ipc.writeSTR(0x3380, nacr); --display delected radio on green bar
end
ipc.set("ACTIVE_RADIO", nacr);
ipc.writeSW(0x32FA, 3); --show active radio on green bar for 3 sec
le script lua est long comment le partager
Hello zigou
une vidéo mieux que les mots " a partir de 3:40 min
Merci Zigou
avec mon script
function stby_freq_com1 ()
MJCD8_Write(35775, 65058).
end
Je peut changer la fréquence du com1 afficher exemple 118.000 ----) a 135.775
De cette manière je devrais faire plusieurs script lua pour chaque fréquence
Pour le changement com1 en 136.775
function stby_freq_com1 ()
MJCD8_Write(36775, 65058).
end
Pour le changement com1 en 124.775
function stby_freq_com1 ()
MJCD8_Write(24775, 65058).
end
Pour le changement com1 en 118.775
function stby_freq_com1 ()
MJCD8_Write(18775, 65058).
end
Etc
Mai avec le script sur avsim en peut changer la fréquence via le pavé numérique
En entre directement la fréquence 118.000 a traver les touches
Touche : 1
Touche : 1
Touche : 8
Touche : . (point pavé numérique)
Touche : 0
Touche : 0
Touche : 0
D5turbi titre changer
C'est quoi la question ?
oui
comment crée un script lua qui fait la même chose mais pour le majestic ?
salut a tous
j'ai besoin d'aide,voila j’utilise un script lua npcv2.21.zip trouver sur avsim pour contrôler les instruments des avions par des commande vocales via VOICE ATTACK avec ce script en peut par exemple changer la fréquence COMs NAVs ADFs SQWK les valeur ALT HDG CRS IAS VS pour les avions par Default PMDG A2A même LE majestics dash8 " via le clavier" en attribut des touches clavier au différente commande puis en entre au clavier numérique les différentes valeur, pour l'Altitude en veut saisire 10000 pied sur le mcp en appui sur la touche affecter pour le changement de la valeur et puis en tape directement 10000 sur le clavier numérique et la valeur change la radio pareille pour NAV HDG etc
sauf que pour le Majestic pour les COMs NAVs ADFs SQWK impossible en cherchant jai trouver les valeur dans le fichier varlist.xlsx et a laide de IntVarCRCGen.exe
You have to use the XML interface for setting them. The variables are in the EFIS section.
EFISdata_->ARCDUs[0].stby_freq_com[0] Like: 35775 for 135.775
EFISdata_->ARCDUs[0].stby_freq_com[0] en entran ca dans IntVarCRCGen.exe = 65058
avec ce script la frequence com change 135.775
function stby_freq_com1 ()
MJCD8_Write(35775, 65058).
end
30775 = 135.775
si vous voulez je peut mettre les script lua mes comment ?
Ok merci
voici la solution si ça peut aider. jai trois (03) messages
dans keypress fsuipc attribué un raccourci clavier puis dans paramètre ajouter dans mon cas 62;13;12 pour chaque "script
if ipcPARAM == 62 then <-------------- a ajouter dans paramètre "Fsuipc
tab="\t"
ipc.set("KEY_POS", 1)
onoff = ipc.get("ONOFF")if (not(onoff == nil) and onoff == "OFF") then
return
end
ipc.writeSTR(0x3380, tab.."message N°1") -- display active radio on green baripc.writeSW(0x32FA, 4) --display AP Heading on green bar for 4 sec
end <----------------------ajouter "end" a la fin de chaque(script)if ipcPARAM == 13 then <-------------- a ajouter dans paramètre "Fsuipc
tab="\t"
ipc.set("KEY_POS", 1)
onoff = ipc.get("ONOFF")if (not(onoff == nil) and onoff == "OFF") then
return
end
ipc.writeSTR(0x3380, tab.."message N°2") -- display active radio on green baripc.writeSW(0x32FA, 4) --display AP Heading on green bar for 4 sec
endif ipcPARAM == 12 then <-------------- a ajouter dans paramètre "Fsuipc
tab="\t"
ipc.set("KEY_POS", 1)
onoff = ipc.get("ONOFF")if (not(onoff == nil) and onoff == "OFF") then
return
end
ipc.writeSTR(0x3380, tab.."message N°3") -- display active radio on green baripc.writeSW(0x32FA, 4) --display AP Heading on green bar for 4 sec
end
comment mettre résolu ?
FSX gère les script LUA a traver fsuipc
bonne jour a tous et j’espère bonne santé a tout le monde
jai crée des script lua pour afficher des message (sur le bandeau vert)grasse a des raccourcis clavier voila j'aimerais les combiner dans un seul script et affecter a chaque "message a afficher" un raccourci clavier
Exemple de deux script que jai pri sur un autre script trouver sur avsim que jai modifier :NpC4FSX&P3D.lua
script 1
--------
tab="\t"
ipc.set("KEY_POS", 1)
onoff = ipc.get("ONOFF")if (not(onoff == nil) and onoff == "OFF") then
return
end
ipc.writeSTR(0x3380, tab.."message N°1") -- display on green baripc.writeSW(0x32FA, 4) --display on green bar for 4 sec
____________________________________________________
script 2
--------
tab="\t"
ipc.set("KEY_POS", 1)
onoff = ipc.get("ONOFF")--if (not(onoff == nil) and onoff == "OFF") then
return
end
ipc.writeSTR(0x3380, tab.."message N°2") -- display on green baripc.writeSW(0x32FA, 4) --display on green bar for 4 sec
merci
Patrick
problème réglé en réinstallons SimConnect sp2
Merci
salut
j'ai un problème avec SODE 1.6.5 sur FSX_SE j'ai des croix rouge a la place des passerelles alors que SODE 1.5.3 j'ai pas ça.
merci de m'aider