Jump to content

taguilo

Members
  • Content Count

    883
  • Donations

    $0.00 
  • Joined

  • Last visited

Everything posted by taguilo

  1. >3. I'm not sure but I think the CIVA unit only accepts a>position in the "minutes.degrees.seconds" format (W 155.23.4),>and seconds are rounded to the nearest single digit?>The positions must be inserted as Degrees and minutes, to the nearest tenth of minute. So, for a value of 155.234 degrees, the remainder is extracted (0.234) and multiplied by 60 to obtain the minutes (14.04) then rounded to the nearest tenth (14.0) to obtain the final number of 155140 that will be entered in the position.Hope this helpsTom
  2. Hi,>Then, you need to enter the plane's position while the MSU is>on standby, not align. Then you can align the INS after the>position entry. You can enter the plane's position with selector in stby, align or nav. However, alignment won't continue below an API of 7 until PPOS is set.>Now when i switch the INS selector to WAYPT,there is no entry>in the 0 slot.Is this normal?Or do i have to wait a while for>the INS to align(How long does this take?)?You cannot enter a position in slot 0 because that is the slot of the aircraft's present position. As soon as INS is aligned, that position will be actualized and show the PPOS registered.It is possible to force the update of slot 0 before alignment is finished by doing a WP Change 0-1.Tom
  3. Paul,It's basically the same...(M:Event) 'LeftSingle' scmp 0 == if{ (L:MSG,seconds) 0 == if{ @Time (>L:Var1,seconds) 0 (>L:MsgWarn,number) 0 (>L:APT_ICAO_enter,bool) 0 (>L:Delete,bool) 0 (>L:DirTO_cont,bool) 0 (>L:DirTO,bool) 0 (>L:SetValue, number) 0 (>L:InputError, number) @DigitErase @InvokeICAOInputMode((@c:FacilityICAO), ' ', 31) } els{ (L:MSG,seconds) 2 + @Time < if{ 0 (>L:MasterMsgWarn,bool) } } }(M:Event) 'LeftSingle' scmp 0 == if{ 0 (>L:MSG,seconds) } This code resets a bunch of values only once, and, after being held for more than 2 seconds, resets (L:MasterMsgWarn,bool) as well (or it should be set to 1?).Note that if hold is released before two seconds, MasterMsgWarn will NOT reset.Tom
  4. Paul,Try this:(M:Event) 'LeftSingle' scmp 0 == if{ (L:Var1,seconds) 0 == if{ @Time (>L:Var1,seconds) 0 (>L:MsgWarn,number)0 (>L:APT_ICAO_enter,bool)0 (>L:Delete,bool)0 (>L:DirTO_cont,bool) 0 (>L:DirTO,bool) 0 (>L:SetValue, number)0 (>L:InputError, number)@DigitErase@InvokeICAOInputMode((@c:FacilityICAO), ' ', 31)0 (>L:Clear,bool)}els{ (L:Var1,seconds) 2 + @Time < if{ 1 (>L:Clear,bool) } }} All the zero assignments, @DigitErase and @InvokeICAOInputMode will be processed on the first pass only.I'm not sure whether this would suit for @InvokeICAOInputMode Tom
  5. Ed,These two macros work good for me:(L:AP Mach Speed, mach) (A:Ambient Temperature, celsius) 273.15 + sqrt 38.967854 * * (A:Airspeed True, knots) (A:Airspeed Indicated, knots) - - (L:AP IAS Speed, knots) (A:Airspeed True, knots) (A:Airspeed Indicated, knots) - + (A:Ambient Temperature,celsius) 273.15 + sqrt 38.967854 * / It shouldn't be difficult to translate them to C++ Tom
  6. >3rd: I thought of using a "flat" power-curve for the>"twin-engines" in the air-file and then use another curve ->read from a section of the airfile unused by the simulator ->to modulate power-settings along the thrustlevers travel.>Hi,Actually you don't need to read anything extra from the .air file; instead use polinomials to relate engine data retrieved from FS Vars with proper thrust lever positions. And it can be done entirely in XML, indeed. Thing like a Thrust Commanded Vector/pointer can be perfectly modeled (though not being an easy task) besides other specific engine control systems-all in XML, or C++, as you prefer.If your a/c has 8 engines in pairs of two, I think it should be possible to obtain fair results if you have good info on performance parameters and true relationship between thrust,fuel comsumption, and flight scalars (lift, drag,etc) for a 4-engine system (.air tables) with similar technical data. Very fun for sure :-)Tom
  7. >Just to add one thing Rob forgot to mention (I learned a lot>from him, so I guess this is nothing new to him...)>>To trigger an event only once use a spcific variable for this,>which by default has a zero value. But after the triggering>set this variable to something different like this:>>(L:test,bool) 0 == if{ -trigger event- 1 (>L:test,bool) }>>So the -trigger event- will only be executed once.>>Simple, isn't it?>>>>Herbert>Hi,The other way could be useful as well: (My Condition to fire the event) (>L:test,bool)......(L:test,bool) if{ -trigger event- 0 (>L:test,bool) }since then one can have control of the moment the event needs to be fired. If the trigger is (L:test,bool) 0 ==, as soon as the gauge initializes the event will be fired automatically, which may not be desirable in many circumstances.Tom
  8. Hi,I cannot start it either, error borlndmm.dllTom
  9. Paul,"HDGtimer" macro's stack finish empty (equals 0), so it should be enough to test (L:Hdgdisp, bool) value only. Tom
  10. Paul,I would recommend you stick to FS9 XML coding. Unless you need the tag, which finally works in FSX XML, the new schema won't add a bit of functionality to your projects. I even doubt that it will be maintained in future releases, as it was added only to comply with the ACE editor ( and I also suspect that you don't use that editor, do you? :-) )Tom
  11. >>Okay, then one doesn't need to tinker with the other stuff at>all :-DProbably no :-) I can assure you that my a/c will go completely dark after 40 mins of battery only power draining...Tom
  12. >> Tom appears to have figured out all these details. He has>also been working on his XML gauges for a long time. ;)>Well, Ron has helped me out to understand quite a lot of aircraft data relationships and other useful info. His XML Jet Test is a gem; one can find tests for almost every technical var; sometimes it is even easier to follow his code than to understand his explanations :-)Now, for TO/CLB/CRZ Thrust managing I use Boeing tables translated straight into XML (I call them 3DTables), and parsed with macros specifically designed for that. Tom
  13. >One caveat regarding battery life. If FS sees the battery>dead, no amount of custom code will start the engines. ;)This entry in aircraft.cfg will give unlimited battery power, a good start point for a custom electrical system.[electrical]......electric_always_available = 1Tom
  14. Jan,Long time since a did my last big iron's flight :-( Too busy with my gague programming task. However, I do listen Beethoven while working with code :-)Regarding your thrust question, I succeeded to model my 757 Thrust system as real as it gets. It includes EPR settings for different phases of flight, ECC Thrust control and ELP N1 protection, EPR Commanded indicator (throttle's position for a desired EPR), etc.I took me several months to finish the engine model (RR), where I had to work with engine tables of the .air file. The clue to obtain good thrust values is to find the proper relationship between those tables, use a set of polinomials to show proper values on the gauge's readings, and other tricky stuff.Tom
  15. Jan et al,May I intrude as well? :-)I am eager to know the reason you need such "technical" values like Lift, Drag, Airforil, etc within a flight...Do you use them in FMC calcs maybe?Tom
  16. >Quite serious.>>Despite what ACES thinks... most of the civilized world does>not do math via reverse polish notation (RPN), as the XML>stack method is commonly refered to.I agree, Ed. However, I believe RPN is the only type of scripting that can be parsed from an FS XML file with an acceptable performance. In fact, the way it mainly works is such #### simple (so to speak) that I can't say anything but kudos to ACE's team developers!Tom
  17. >It's a matter of understanding what's happening, that's all...>;)>"and" means combine the two expression's results and return a>value...>>Hence, the only possible outcomes:>>0 + 0 = 0>1 + 0 = 1>0 + 1 = 1>1 + 1 = 2Bill, you always amaze me! :-eek :-)Actually Value1Bool "and" Value2Bool returns True (1) if BOTH values are True otherwise it returns False (0). So,0 and 0 = 01 and 0 = 00 and 1 = 01 and 1 = 1Tom
  18. >>Whilst I am no longer part of the PSS team, it doesn't>>preclude me from answering.>>>>How exactly do you define that when the CoG is 25 that the>>trim can't be 7.25? >>>>You do realise that these two are not directly related in>that>>its completely possible to have completely different values>>dependant on the traffic load?>>>>Hi Norman!>I think a Trim of 7.25 is out off the green Band.>> RalfYes it is, barely. 7 is the lower limit, and 2 is the upper.And, for 25% MAC, the limits are roughly 5 for 260 ton and heavier, and 3.50 for 160 ton and lighter. Tom
  19. Guys,Comparisons between two values (ie Value1 Value2 >= or Value1 Value2 == ; etc) always result in a boolean 0 if false or 1 if true, therefore it isn't necessary to use if{}/els{} operators to obtain the desired value. It is ok to code,for example, 10 25 (A:GENERAL ENG1 FUEL PRESSURE,psi) rngor(A:GENERAL ENG1 FUEL PRESSURE,psi) 25 >etc.Tom
  20. Hi,I was just going to bed...:-) works with only one event per , the last one ; which in your case is LANDING_LIGHTS_TOGGLE, that's the reason for the previous events not being recognized.To solution this, use directly (>K:TOGGLE_NAV_LIGHTS) (>K:PANEL_LIGHTS_TOGGLE) (>K:LANDING_LIGHTS_TOGGLE) Tom
  21. Jan,145426*(1-(((ambient pressure,kpa/101.325)*288.15)/(ambient temperature,C+273.15))^0.325)One approach in XML:(A:Ambient pressure,kPa) 101.325 / 288.15 * (A:Ambient temperature,kelvin) / 0.325 pow 1 r - 145426 * Tom
  22. >As Jan's code shows, but with no explanation :) is that you>can have one and only one section per >section.>>Simply put all your assignments inbetween the single >tag pair... ;)Yes, I showed a proper example but forgot to add that only one - the last in sequence - is recognized per any tag. It may be interesting to say, also, that for testing purposes it could be faster - at least for me it is - to have a set of scripts with different values to test, and cut and paste the one whose data is wanted each time into the last position, instead of deleting/replacing part of the current 's script.Tom
  23. Hi,>> 0.1 (>L:Cabin over pressure,psi)> 10.1 (>L:Cabin min pressure,psi)> (A:Ambient pressure,psi) (>L:Cabin>pressure,psi)>>>Shouldn't (A:Ambient pressure,psi) (>L:Cabin>pressure,psi) pop the barometric pressure onto the>stack and then store it in L:Cabin Pressure? > must be used inside a tag, something like this:0.1 (>L:Cabin over pressure,psi)10.1 (>L:Cabin min pressure,psi)(A:Ambient pressure,psi) (>L:Cabin pressure,psi)Also there is no need to initialize L/GVars.Hope this helpsTom
  24. Hi,It's not that bad if the gauges you are working on in FSX are of FS9 type. Just use your script as recommended in this thread and it will show correctly in FSX.Tom
×
×
  • Create New...