Guest Makoy

Keysend sioc:iin ?

11 viestiä aiheessa

Moi, voisko joku taas vääntää mulle rautalangasta  :-[  Mastercard on FS-koneessa, simuohjelma johon pitäis saada näppäinkomento on clientillä. Pitäis lisäillä sioc scriptiin keysend komennot masterilta ja komennolle ei ole olemassa offsettia. Esimerkiksi nyt tällaseen:

 

Var 0001, Link IOCARD_SW, Device 0, Input 37, Type I  // Rotary_Apu_On

{

IF v0001 = 1

{

&key = 1

&keysend = xxxx //  xxxx = riippuen mitä näppäintä käyttää

}

ELSE

{

v0001 = 0

&key = 1

&keysend = xxxx

}

}

 

Vai pitäiskö olla oma Var noille keysend komennoille, koska tossahan ei nyt ole mitään linkkiä fsuipc:hen?

 

Var 0001, Link IOCARD_SW, Device 0, Input 37, Type I  // Rotary_Apu_On

{

IF v0001 = 1

v0002 = 1

}

ELSE

{

v0001 = 0

v0002 = 1 

}

}

 

Var 0002, Link FSUIPC_OUT

{

&key = 1

&keysend = xxxx

}

}

Jaa viesti


Link to post
Jaa muulla sivustolla

moro, sun pitää tehdä yks VAR näppäimille.

 

>
Var 0001, Link IOCARD_SW, Device 0, Input 37, Type I  // Rotary_Apu_On
{
IF v0001 = 1
{
&KEYS= xxxx //  xxxx = riippuen mitä näppäintä käyttää
&KEYS= 0
}
ELSE
{
&KEYS= xxxx 
&KEYS= 0
}
}
Var 2 name Key Link KEYS

 

ja sit määrittelet sioc.ini:in mitä ni sun keyt halutaan tekevän

>
[************** KEYBOARD EMULATOR MODULE ***************]
window = "Microsoft Flight Simulator X"
#xxxx=B

Jaa viesti


Link to post
Jaa muulla sivustolla

Ahaa, kiitti Jouni. Mut pelaako tuo tolleen Fsuipc:n  ja wideclietin kanssa?

Jaa viesti


Link to post
Jaa muulla sivustolla

Joopajoo, mikähän nyt on kun ei compiloi tiedostoa.

Access violation at address 00440075 in module 'config_sioc.exe' Read of address 00000024 ?????

 

Löyty bugi uudesta sioc 4.1:stä. Jos onnistuu tekemään yhtä tyhmiä virheitä scriptiin kun minä (mikä on ehkä mahdottomuus), menee koko compaileri solmuun  :P

Jaa viesti


Link to post
Jaa muulla sivustolla

En mä ole saanu tätä hommaa skulaamaan, sioc on ok koska Fsuipc tunnistaa "JOY64" kytkimen "buttons and switches" lehdellä. Clietillä vaan ei tapahdu yhtikäs mitään?

 

Offsetti siocissa on $3340, Length 4  (Joystick64)  ja "CHANGEBIT = 1 komento" menee FSuipc:lle. Clientilla olevassa ohjelmassa näppäimistön painike 1 kytkee yhden pumpun päälle. Client inissä on lisätty [buttonKeys] ja sen alle KeySend1=49,8 . oon vekslaillu tätä vaikka miten, mutta ei onnistu. "Buttons and switches lehdellä" vasemmalla puolella send 1 =ei toimi, oikealla puolella valitsin 1-225 jutskan ja send 1= ei toimi. Client iniin lisäsin UseSendInputs=Yes =ei toimi , lisäsin Keysend1 komentoon ,Run5 = ei toimi. Client koneella ohjelman ikkuna valittuna = ei toimi, ohjelman ikkuna ei valittuna = ei toimi. Mikä mättää????

Jaa viesti


Link to post
Jaa muulla sivustolla

Kokeile Marco ottaa [buttonKeys] osio kokonaan pois ja laita nuo KeySend komennot [user] osion alle. Määrittele näppäinkomento FSuipc:n oikean puoleisella osiolla 1-225 jutskalla. Koska sulla on tuo MFD-addon Run-komennolla clientillä, niin saat näppäinkomennot toimimaan, vaikka MFD:n ikkuna ei olisi valittuna. Lisää vaan KeySend1=49,8 jälkeen ,Focus,Run5

( 5 on MFD- addonin numero clientillä.

Jaa viesti


Link to post
Jaa muulla sivustolla

Tere, tämäkin juttu vielä kesken. Toimii hyvin kun kerran painaa jokaista painokytkintä select paneelista, mutta kun painaa jo valittuina olleita, niin ei tapahdu mitään???? Eiköhän toi Fsuipc lähetä nyt noita komentoja kun kerran, vai missä vika vois piillä???

Jaa viesti


Link to post
Jaa muulla sivustolla

Tere, tämäkin juttu vielä kesken. Toimii hyvin kun kerran painaa jokaista painokytkintä select paneelista, mutta kun painaa jo valittuina olleita, niin ei tapahdu mitään???? Eiköhän toi Fsuipc lähetä nyt noita komentoja kun kerran, vai missä vika vois piillä???

Taas kerran täytyy mainita, etten ymmärrä sioc:sta mitään, mutta yleisesti ottaen, jos painokytkin muuttaa joidenkin muuttujien arvoa eikä mikään muuta niitä takaisin alkuperäiseen arvoon, niin ei kytkimestä enää tapahdu mitään, koska painaminen ei aiheuta mitään muutoksia.

 

>
var muuttuja = 0;
//muuttujan arvo on nolla

if(nappi){
muuttuja =1;
}

//muuttujan arvo on nyt yksi
if(nappi){
muuttuja =1;
}
//muuttujan arvo on edelleen yksi

Jaa viesti


Link to post
Jaa muulla sivustolla

Moi, tässä siocin pätkä. Kytkin lähettää komennon FSuipc:lle, joka lähettää sen wide client koneelle ProMFD ohjelmaan, jossa nuo MFD:n modet vaihtuvat kytkinten mukaan. Kokeilin käyttää Type P:tä ja Type I:tä, mutta ei vaikutusta. Kaikki skulaa hyvin niin kauan, kunnes pitäis painaa jotain kytkintä toisen kerran.

 

 

// *******************************

//         MFD SELECT PANEL

// *******************************

 

 

Var 0014, name SendMFD, Link FSUIPC_OUT, Offset $3340, Length 4 // SEND_KEY_TO_MFD

 

Var 2448, name CTR_SEL, Link IOCARD_SW, DEVICE 0, Input 19, Type I   //   LWR_CTR_SW

 

Var 2449, name ENG_SEL, Link IOCARD_SW, DEVICE 0, Input 28, Type I   // ENG_DISPLAY_SW

{

   IF &ENG_SEL = 1

   {

        &SendMFD = CHANGEBIT 36 ,v2449

   }

}

 

Var 2450, name STAT_SEL, Link IOCARD_SW, DEVICE 0, Input 29, Type I   // STAT_DISPLAY_SW

{

   IF &STAT_SEL = 1

   {

        &SendMFD = CHANGEBIT 37 ,v2450

   }

}

 

Var 2451, name ELEC_SEL, Link IOCARD_SW, DEVICE 0, Input 22, Type I   // ELECTRIC_DISPLAY_SW

{

   IF &ELEC_SEL = 1

   {

        &SendMFD = CHANGEBIT 38 ,v2451

   }

}

 

Var 2452, name HYD_SEL, Link IOCARD_SW, DEVICE 0, Input 31, Type I   // HYDRAULICS_DISPLAY_SW

{

   IF &HYD_SEL = 1

   {

        &SendMFD = CHANGEBIT 39 ,v2452

   }

}

 

Var 2453, name FUEL_SEL, Link IOCARD_SW, DEVICE 0, Input 30, Type I   // FUEL_DISPLAY_SW

{

   IF &FUEL_SEL = 1

   {

        &SendMFD = CHANGEBIT 40 ,v2453

   }

}

 

Var 2454, name AIR_SEL, Link IOCARD_SW, DEVICE 0, Input 35, Type I   // AIRCOND_DISPLAY_SW

{

   IF &AIR_SEL = 1

   {

        &SendMFD = CHANGEBIT 41 ,v2454

   }

}

 

Var 2455, name DOOR_SEL, Link IOCARD_SW, DEVICE 0, Input 26, Type I   // DOOR_DISPLAY_SW

{

   IF &DOOR_SEL = 1

   {

        &SendMFD = CHANGEBIT 42 ,v2455

   }

}

 

Var 2456, name GEAR_SEL, Link IOCARD_SW, DEVICE 0, Input 34, Type I   // GEAR_DISPLAY_SW

{

   IF &GEAR_SEL = 1

   {

        &SendMFD = CHANGEBIT 43 ,v2456

   }

}

 

Var 2457, name FCTL_SEL, Link IOCARD_SW, DEVICE 0, Input 27, Type I   // FLIGHTCONTROLS_DISPLAY_SW

{

   IF &FCTL_SEL = 1

   {

        &SendMFD = CHANGEBIT 44 ,v2457

   }

}

 

Var 2458, name CHKL_SEL, Link IOCARD_SW, DEVICE 0, Input 23, Type I   // CHECKLISTS_DISPLAY_SW

{

   IF &CHKL_SEL = 1

   {

        &SendMFD = CHANGEBIT 45 ,v2458

   }

}

 

Var 2459, name COMM_SEL, Link IOCARD_SW, DEVICE 0, Input 33, Type I   // COMMUNICATIONS_DISPLAY_SW

{

   IF &COMM_SEL = 1

   {

        &SendMFD = CHANGEBIT 46 ,v2459

   }

}

 

Var 2460, name NAV_SEL, Link IOCARD_SW, DEVICE 0, Input 32, Type I   // NAVIGATIONS_DISPLAY_SW

 

 

Jaa viesti


Link to post
Jaa muulla sivustolla

Haa, löysin ratkaisun  ;D Oli niinkin yksinkertainen juttu, kun lisäsin vaan tällaset rivit " &SendMFD = DELAY 0, 10 "changebittien alle. Vika oli siis siocissa, ei fsuipc:ssä. Nyt sit selvis miksi en saanu kunnolla toimimaan noita muitakaan juttuja. Jes, jotain myönteistäkin tapahtu viikonloppuna.

 

Var 2449, name ENG_SEL, Link IOCARD_SW, DEVICE 0, Input 28, Type I  // ENG_DISPLAY_SW

{

  IF &ENG_SEL = 1

  {

        &SendMFD = CHANGEBIT 36 ,v2449

        &SendMFD = DELAY 0, 10

  }

}

Jaa viesti


Link to post
Jaa muulla sivustolla

Luo uusi käyttäjätunnus tai kirjaudu sisään

Sinun täytyy olla jäsen osallistuaksesi keskusteluun

Luo käyttäjätili

Rekisteröi uusi käyttäjätili helposti ja nopeasti!


Luo uusi käyttäjätili

Kirjaudu sisään

Sinulla on jo käyttäjätili?


Kirjaudu sisään